RKL CA service
RKL Introduction Token RKL Binding library are designed for removing boilerplate code of RKL implementation to complete key processes.
Before adding To run this binding smooth, you need to add your AndroidManifest.xml snipped below which should contain bank info to set rkl.
<meta-data
android:name="app_name"
android:value="BNK_xxx_XXXX" />Function List
Certificate exportDevicePublicKey()KeyExchange startKeyExchange(byte[] ucKDHCertificate)int completeKeyExchange(List< RKLKeyInfo> rklKeyInfoList,byte[] ucEncryptedKeyBlock,int hashAlgorithm,byte[] ucKDHSignature)Certificate exportDevicePublicKey() Returns a certificate object which contains resultCode and certificate as byte[]. If result code is not zero,you should look on error table that are listed at below. If succeed, result code will be zero and you will receive key as byte array.
KeyExchange startKeyExchange(byte[] ucKDHCertificate) Send your KDH Certificate as byte array, then key exchange method will return an object named as KeyExchange which contains result code in operation. If successful, result code will be zero and you will receive random number in object as byte[] . If result code is not zero,you should look on error table that are listed at below.
int completeKeyExchange(List< RKLKeyInfo> rklKeyInfoList,byte[] ucEncryptedKeyBlock,int hashAlgorithm,byte[] ucKDHSignature) After you have parameters to construct RKLKeyInfo class,that parameters which need to construct shown in snippet,
private int usKeyIndex;
private String usTokenKMSKeyType;
private String usTokenKMSKeyAlgorithm;
private byte[] baKeyCheckValue;
//Constructor
public RKLKeyInfo(int usKeyIndex,String usTokenKMSKeyType,
String usTokenKMSKeyAlgorithm,byte[] baKeyCheckValue)send them as a list with parameters,also add ucEncryptedKeyBlock as byte[], select your hash algorithm below and add your ucKDHSignature as byte[].
When keyExchange completes, injection will start afterwards. If any problem occurs in injection step,you will get result code provided from injection provider. Also you should check error table provided below. If everything is smooth,then you'll get result code zero which means injection is also successful.
RKL Error Table
Sample Usage
Last updated