org.opcfoundation.ua.transport.security
Class JceCryptoProvider

java.lang.Object
  extended by org.opcfoundation.ua.transport.security.JceCryptoProvider
All Implemented Interfaces:
CryptoProvider
Direct Known Subclasses:
BcJceCryptoProvider, ScJceCryptoProvider, SunJceCryptoProvider

public abstract class JceCryptoProvider
extends Object
implements CryptoProvider

Abstract JceCryptoProvider class.


Field Summary
protected  Provider provider
           
 
Constructor Summary
JceCryptoProvider()
          Constructor for JceCryptoProvider.
 
Method Summary
abstract  byte[] base64Decode(String string)
          base64Decode.
abstract  String base64Encode(byte[] bytes)
          base64Encode.
 Mac createMac(SecurityAlgorithm algorithm, byte[] secret)
          createMac.
 int decryptAsymm(PrivateKey decryptingKey, SecurityAlgorithm algorithm, byte[] dataToDecrypt, byte[] output, int outputOffset)
          decryptAsymm.
 int decryptSymm(SecurityToken token, byte[] dataToDecrypt, int inputOffset, int inputLength, byte[] output, int outputOffset)
          decryptSymm.
 void encryptAsymm(PublicKey remotePublicKey, SecurityAlgorithm algorithm, byte[] dataToEncrypt, byte[] output, int outputOffset)
          encryptAsymm.
 int encryptSymm(SecurityToken token, byte[] dataToEncrypt, int inputOffset, int inputLength, byte[] output, int outputOffset)
          encryptSymm.
 byte[] signAsymm(PrivateKey senderPrivate, SecurityAlgorithm algorithm, byte[] dataToSign)
          signAsymm.
 void signSymm(SecurityToken token, byte[] input, int verifyLen, byte[] output)
          signSymm.
 boolean verifyAsymm(PublicKey signingCertificate, SecurityAlgorithm algorithm, byte[] dataToVerify, byte[] signature)
          verifyAsymm.
 void verifySymm(SecurityToken token, byte[] dataToVerify, byte[] signature)
          verifySymm.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

provider

protected Provider provider
Constructor Detail

JceCryptoProvider

public JceCryptoProvider()

Constructor for JceCryptoProvider.

Method Detail

base64Decode

public abstract byte[] base64Decode(String string)

base64Decode.

Specified by:
base64Decode in interface CryptoProvider
Parameters:
string - a String object.
Returns:
an array of byte.

base64Encode

public abstract String base64Encode(byte[] bytes)

base64Encode.

Specified by:
base64Encode in interface CryptoProvider
Parameters:
bytes - an array of byte.
Returns:
a String object.

createMac

public Mac createMac(SecurityAlgorithm algorithm,
                     byte[] secret)
              throws ServiceResultException

createMac.

Specified by:
createMac in interface CryptoProvider
Parameters:
algorithm - a SecurityAlgorithm object.
secret - an array of byte.
Returns:
a Mac object.
Throws:
ServiceResultException - if any.

decryptAsymm

public int decryptAsymm(PrivateKey decryptingKey,
                        SecurityAlgorithm algorithm,
                        byte[] dataToDecrypt,
                        byte[] output,
                        int outputOffset)
                 throws ServiceResultException

decryptAsymm.

Specified by:
decryptAsymm in interface CryptoProvider
Parameters:
decryptingKey - a PrivateKey object.
algorithm - a SecurityAlgorithm object.
dataToDecrypt - an array of byte.
output - an array of byte.
outputOffset - a int.
Returns:
a int.
Throws:
ServiceResultException - if any.

decryptSymm

public int decryptSymm(SecurityToken token,
                       byte[] dataToDecrypt,
                       int inputOffset,
                       int inputLength,
                       byte[] output,
                       int outputOffset)
                throws ServiceResultException

decryptSymm.

Specified by:
decryptSymm in interface CryptoProvider
Parameters:
token - a SecurityToken object.
dataToDecrypt - an array of byte.
inputOffset - a int.
inputLength - a int.
output - an array of byte.
outputOffset - a int.
Returns:
a int.
Throws:
ServiceResultException - if any.

encryptAsymm

public void encryptAsymm(PublicKey remotePublicKey,
                         SecurityAlgorithm algorithm,
                         byte[] dataToEncrypt,
                         byte[] output,
                         int outputOffset)
                  throws ServiceResultException

encryptAsymm.

Specified by:
encryptAsymm in interface CryptoProvider
Parameters:
remotePublicKey - a PublicKey object.
algorithm - a SecurityAlgorithm object.
dataToEncrypt - an array of byte.
output - an array of byte.
outputOffset - a int.
Throws:
ServiceResultException - if any.

encryptSymm

public int encryptSymm(SecurityToken token,
                       byte[] dataToEncrypt,
                       int inputOffset,
                       int inputLength,
                       byte[] output,
                       int outputOffset)
                throws ServiceResultException

encryptSymm.

Specified by:
encryptSymm in interface CryptoProvider
Parameters:
token - a SecurityToken object.
dataToEncrypt - an array of byte.
inputOffset - a int.
inputLength - a int.
output - an array of byte.
outputOffset - a int.
Returns:
a int.
Throws:
ServiceResultException - if any.

signAsymm

public byte[] signAsymm(PrivateKey senderPrivate,
                        SecurityAlgorithm algorithm,
                        byte[] dataToSign)
                 throws ServiceResultException

signAsymm.

Specified by:
signAsymm in interface CryptoProvider
Parameters:
senderPrivate - a PrivateKey object.
algorithm - a SecurityAlgorithm object.
dataToSign - an array of byte.
Returns:
an array of byte.
Throws:
ServiceResultException - if any.

signSymm

public void signSymm(SecurityToken token,
                     byte[] input,
                     int verifyLen,
                     byte[] output)
              throws ServiceResultException

signSymm.

Specified by:
signSymm in interface CryptoProvider
Parameters:
token - a SecurityToken object.
input - an array of byte.
verifyLen - a int.
output - an array of byte.
Throws:
ServiceResultException - if any.

verifyAsymm

public boolean verifyAsymm(PublicKey signingCertificate,
                           SecurityAlgorithm algorithm,
                           byte[] dataToVerify,
                           byte[] signature)
                    throws ServiceResultException

verifyAsymm.

Specified by:
verifyAsymm in interface CryptoProvider
Parameters:
signingCertificate - a PublicKey object.
algorithm - a SecurityAlgorithm object.
dataToVerify - an array of byte.
signature - an array of byte.
Returns:
a boolean.
Throws:
ServiceResultException - if any.

verifySymm

public void verifySymm(SecurityToken token,
                       byte[] dataToVerify,
                       byte[] signature)
                throws ServiceResultException

verifySymm.

Specified by:
verifySymm in interface CryptoProvider
Parameters:
token - a SecurityToken object.
dataToVerify - an array of byte.
signature - an array of byte.
Throws:
ServiceResultException - if any.


Copyright © 2018. All rights reserved.