conform to crypto-java