Verify SDK リリースノート
1.1.3
バグ修正
- v1.1.0以降のモックSDKにおいて、同じカードから読み出した署名用電子証明書・利用者証明用電子証明書による利用者IDの識別を行なった場合に、 異なる利用者IDが返却される不具合を修正しました。
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で証明書の有効期限を指定する場合はこの範囲内を指定してください。
- 更新後の CA 証明書の有効期限は、署名用電子証明書・利用者証明用電子証明書ともに 2023 年 1 月 1 日 0 時 0 分 0 秒(GMT)〜 2033 年 1 月 1 日 0 時 0 分 0 秒(GMT)です。
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が追加されました。
- JPKI AP に対してプリミティブな操作を行うためのクラス
破壊的変更
- モック環境において生成される証明書のシリアル番号が負の数になりうる問題を修正しました。
- これにより、同じカードによって生成された証明書でも、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 として読み込むようになりました。
- Android 環境では、アプリケーションのリソースに
バグ修正
- 京セラ社製とソニー社製の一部スマートフォン端末において正常にカードの情報が読み込めない問題を改善しました。
- モック環境において、住所が「山梨県山梨市」になりやすい問題を修正しました。
- これにより、同じカードによって生成された住所でも、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 で生成された証明書とは異なる証明書が生成されるようになりました。