1.1.2
新機能
- Verify SDK が iOS シミュレーター(x86_64)でご利用いただけるようになりました。
バグ修正
- iOS 用の SDK
Verify
パッケージ、VerifyCardInfo
パッケージ の .podspec ファイルに構文エラーがあった問題を修正しました。
1.1.1
仕様変更
- iOS において
Info.plist
にテナント ID を指定できるようになりました。
- これより前のバージョンでは、テナント ID がパースできない場合、自動でデフォルトのテナント ID を使っていましたが、このバージョンからは
IllegalStateException
がスローされるようになりました。
1.1.0
破壊的変更
- モック環境においてカードをタッチしたときに生成するカードを決定するためのインターフェース
CardSupplierInterface
を CardSupplier
という名前に変更しました。
ConfigurableCardSupplier
クラスを削除しました。
- モック環境において生成するカードの情報を指定するためのインターフェース
Card
を実装したクラス ConfigurableCard
を追加しました。
- モック環境において生成する証明書の情報を指定するためのインターフェース
Certificate
を公開しました。
Certificate
を実装したクラス ConfigurableDigitalSignatureCertificate
を公開しました。
Certificate
を実装したクラス ConfigurableUserAuthenticationCertificate
を公開しました。
ConfigurableCard
によってランダム生成されるマイナンバーの上 4 桁が 9999 となるよう変更しました。
ConfigurableCard
によってランダム生成される氏名の候補を変更しました。
ConfigurableCard
によってランダム生成される住所の候補を変更しました。
ConfigurableCard
によってランダム生成される生年月日の範囲を 1970 年 1 月 1 日 〜 2004 年 1 月 1 日の範囲に変更しました。
その他
- モック環境の CA 証明書を更新しました。これにより、SDK が生成する署名用電子証明書・利用者証明用電子証明書は更新後の CA 証明書によって署名された証明書となります。
- 更新後の CA 証明書の有効期限は、署名用電子証明書・利用者証明用電子証明書ともに 2023 年 1 月 1 日 0 時 0 分 0 秒(GMT)〜 2033 年 1 月 1 日 0 時 0 分 0 秒(GMT)です。
ConfigurableDigitalSignatureCertificate
、ConfigurableUserAuthenticationCertificate
で証明書の有効期限を指定する場合はこの範囲内を指定してください。
1.0.7
仕様変更
- モック環境において生成する証明書の項目を変更しました。
- 署名用電子証明書・利用者証明用電子証明書の Subject 項目の CommonName の値に含まれるアルファベットを大文字に変更しました。
- 署名用電子証明書・利用者証明用電子証明書の Certificate Policies 項目の PolicyIdentifier の値を変更しました。また、PolicyQualifiers 項目の値である CPS(Certification Practice Statement) の URL を変更しました。
- 利用者証明用電子証明書の AuthorityInfoAccess 項目の AccessDescription の値である OCSP レスポンダ の URL を変更しました。
- 利用者証明用電子証明書の CRL Distribution Points 項目の Organizational Unit Name の値が
P8N for digital signature
となっていたため、 P8N for user authentication
に修正しました。
その他
- 一部 Android 向けパッケージに不要な依存関係が含まれていた問題を修正しました。
1.0.6
新機能
- Android 環境において、
ReaderSessionException
例外が発生したとき、原因となった例外が存在する場合に cause
プロパティで参照できるようになりました。
- iOS 環境において、
ReaderSessionException
例外が発生したとき、原因となったエラーが存在する場合に underlyingError
プロパティで参照できるようになりました。
バグ修正
ConfigurableCardSupplier
によって作成されたモックカードとの通信で、
正しい暗証番号によって照合をした場合に試行可能回数がリセットされない不具合を修正しました。
仕様変更
- Android 環境において、SDK の関数から
SecurityException
例外が発生する場合、
代わりに ReaderSessionException
例外が発生するように変更しました。
このとき、 プロパティ code
には TagLost
が設定されます。
1.0.5
新機能
- 券面事項入力補助 AP と 券面事項確認 AP に対応するクラスのみを含む iOS 用の SDK
VerifyMockCardInfo
が利用可能になりました。
破壊的変更
ConfigurableCardSupplier
のコンストラクタ引数 myNumber
の型を数値型から文字列型に変更しました。
バグ修正
- iOS において、カードとの通信を行う SDK の関数実行時、
システムのカード読み取り UI の「キャンセル」ボタンを押した場合に呼び出し元に制御が戻らない不具合を修正しました。
仕様変更
ConfigurableCardSupplier
のコンストラクタ引数 certNotBefore
のみを指定した場合、
生成される証明書の有効期限終了日を certNotBefore
の 5 年後と CA 証明書の有効期限終了日のうち、早い方に設定するよう変更しました。
ConfigurableCardSupplier
のコンストラクタ引数 certNotAfter
のみを指定した場合、
生成される証明書の有効期限開始日を certNotAfter
の 5 年前と CA 証明書の有効期限開始日のうち、遅い方に設定するよう変更しました。
- モック環境において
ConfigurableCardSupplier
を用い有効期限を指定した証明書を生成する際、
指定した certNotBefore
もしくは certNotAfter
が 2022 年 1 月 1 日 0 時 0 分 0 秒(GMT)〜 2031 年 12 月 30 日 0 時 0 分 0 秒(GMT) に含まれない場合、
IllegalArgumentException
を発生させるよう変更しました。
1.0.4
新機能
- マイナンバーカードに対しプリミティブな操作を行うためのクラスが追加されました。
これらのクラスを用いることで、カードの読み出しをする際により細かな制御を行えます。
- JPKI AP に対してプリミティブな操作を行うためのクラス
LowLevelJPKIAP
が追加されました。
- 券面事項入力補助 AP に対してプリミティブな操作を行うためのクラス
LowLevelInputSupportAP
が追加されました。
- 券面事項確認 AP に対してプリミティブな操作を行うためのクラス
LowLevelConfirmationAP
が追加されました。
破壊的変更
- モック環境において生成される証明書のシリアル番号が負の数になりうる問題を修正しました。
- これにより、同じカードによって生成された証明書でも、1.0.3 以前の証明書とは異なる証明書が生成されます。
その他
- 最新 4 情報取得の同意と同意取消を行うために必要なデータの生成方法を修正しました。
- モック環境において有効期限を指定して証明書を生成する際、
指定した
notBefore
の値が 2022 年 1 月 1 日 0 時 0 分 0 秒(GMT)〜 2031 年 12 月 30 日 0 時 0 分 0 秒(GMT) に含まれない場合、 IllegalArgumentException
が発生するようになりました。
- この期間はモック環境における CA 証明書の有効期間であり、証明書の発行日時が CA 証明書の有効期間外とならないように修正しました。
1.0.3
新機能
- 券面事項確認 AP において、生年月日情報を取得できるようになりました。
ConfirmationAP
クラスに readDateOfBirthContentWithDateOfBirthPassword
メソッドが追加されました。
これを使用して生年月日情報を取得できます。
VerifiableDateOfBirthContent
クラスが追加されました。
バグ修正
- モック環境において有効期限を指定して証明書を生成する場合、
有効な期間が存在しない
notBefore
、 notAfter
を入力すると IllegalArgumentException
が発生するようになりました。
- モック環境において生成される証明書の IssuerAltName が間違っていた問題を修正しました。
- モック環境において生成される証明書の Subject を修正しました。
- モック環境において生成される券面事項のデータの一部が間違っていた問題を修正しました。
- モック環境において生成される券面事項の有効期限が間違っていた問題を修正しました。
- iOS において、稀にクラッシュする問題を修正しました。
1.0.2
新機能
SdkConfigInterface
が追加されました。
ConfigurableCardSupplier
のコンストラクタに渡すことで、
カード生成時に使用されるテナント ID を明示的に指定できるようになりました。
1.0.1
バグ修正
- JPKI AP クラスの署名用パスワードの照合残り回数の取得をする関数
getDigitalSignaturePasswordRemainingRetries
の返り値が間違っていた問題を修正しました。
- Samsung 社製の一部スマートフォン端末において正常にカードの情報が読み込めない問題を改善しました。
1.0.0
新機能
- JPKI AP において最新 4 情報取得の同意と同意取消を行うために必要なデータを取得できるようになりました。
JPKIAP
クラスに createConsentApplication
メソッドが追加されました。
これを使用して最新 4 情報取得の同意に必要なデータを取得できます。
JPKIAP
クラスに createRevocationApplication
メソッドが追加されました。
これを使用して最新 4 情報取得の同意取消に必要なデータを取得できます。
- 同意を取得する項目を設定するための
Preference
クラスが追加されました。
- モック環境において生成されるカードを指定できるようになりました。
- カードを指定するためのインターフェース
CardSupplierInterface
が追加されました。
このインターフェースを実装したインスタンスを ReaderSession
に渡すことで、
JPKI AP や券面事項入力補助 AP、券面事項確認 AP で指定したカードが参照されます。
ConfigurableCardSupplier
クラスが追加されました。
これは CardSupplierInterface
インターフェースを実装しており、
これを使用することで容易に生成されるカードの情報を変更することが可能です。
- 基本 4 情報(氏名、住所、生年月日、性別)を表現するクラス
PersonalInfo
が追加されました。
- 性別を表現する定数
PersonalInfo.Gender
が追加されました。
破壊的変更
- モック環境において生成されるマイナンバーの上 6 桁が連続するようになりました。
- モック環境において ReaderSession のテナント ID を代入する変数
tenantId
が削除されました。
- Android 環境では、アプリケーションのリソースに
pocketsign_verify_tenant_id
というキーで保存されている文字列を tenantID として読み込むようになりました。
- iOS 環境では、PocketSign.plist というファイルに
PocketSignVerifyTenantID
というキーで保存されている文字列を tenantID として読み込むようになりました。
バグ修正
- 京セラ社製とソニー社製の一部スマートフォン端末において正常にカードの情報が読み込めない問題を改善しました。
- モック環境において、住所が「山梨県山梨市」になりやすい問題を修正しました。
- これにより、同じカードによって生成された住所でも、1.0.0 以前の住所とは異なる住所になる可能性があります。
- iOS 環境において、長さ 0 のデータを署名するときに意図しない例外が投げられてしまう問題を修正しました。
その他
- モック環境において券面事項確認 AP を利用して読み出される画像データが変更されました。
0.4.1
新機能
- 券面事項確認 AP のデータを取得できるようになりました。
ConfirmationAP
クラスを追加しました。
ConfirmationAP
クラスの readMyNumberContentWithVerificationNumberA
メソッドを使用してマイナンバー画像が含まれるデータを取得できます。
ConfirmationAP
クラスの readPersonalInfoContentWithVerificationNumberB
メソッドを使用して顔写真、氏名文字列の画像、住所文字列の画像などが含まれるデータを取得できます。
- モック環境において券面事項入力補助 AP を利用して読み出されたデータが Verify API で検証可能になりました。
- Android 環境において、
ReaderSession
にオプションを指定できるようになりました。
- カードとの通信を開始してから終了するまでのタイムアウト時間を指定できるようになりました。
破壊的変更
- 券面事項入力補助 AP の返却値の型
VerifiableInputSupportData
のプロパティ dataSignature
の名前が contentSignature
に変更されました。
- Android 環境において、ReaderSession は
android.nfc.TagLostException
を発生させる可能性がありましたが、これに対応する例外 ReaderSessionException.Code.TagLost
が定義されました。
バグ修正
- モック環境において券面事項入力補助 AP を利用して読み出されるデータの署名に使用される証明書が変更されました。
- 券面事項入力補助 AP を利用して読み出されたデータの末尾に 0xff が含まれていましたが、これが削除されました。
その他
- モック環境において生成される人物の生年月日が 1963 年から 2003 年の間になりました。
- モック環境において JPKI AP を利用して読み出された署名用電子証明書に CertificatePolicies Extension が含まれるようになりました。
これにより、同じカードを使用して生成された証明書でも、0.4.1 以前の SDK で生成された証明書とは異なる証明書が生成されるようになりました。