Package foundation.icon.icx.crypto
Class IconKeys
- java.lang.Object
-
- foundation.icon.icx.crypto.IconKeys
-
public class IconKeys extends java.lang.Object
Implementation from https://github.com/web3j/web3j/blob/master/crypto/src/main/java/org/web3j/crypto/Keys.java Crypto key utilities.
-
-
Field Summary
Fields Modifier and Type Field Description static int
ADDRESS_LENGTH_IN_HEX
static int
ADDRESS_SIZE
static double
MIN_BOUNCY_CASTLE_VERSION
static int
PRIVATE_KEY_SIZE
static int
PUBLIC_KEY_SIZE
-
Method Summary
All Methods Static Methods Concrete Methods Modifier and Type Method Description static java.lang.String
cleanHexPrefix(java.lang.String input)
static boolean
containsHexPrefix(java.lang.String input)
static Bytes
createPrivateKey()
static Address
getAddress(Bytes publicKey)
static byte[]
getAddressHash(byte[] publicKey)
static byte[]
getAddressHash(java.math.BigInteger publicKey)
static Address.AddressPrefix
getAddressHexPrefix(java.lang.String input)
static Bytes
getPublicKey(Bytes privateKey)
static boolean
isAndroidRuntime()
static boolean
isContractAddress(Address address)
static boolean
isValidAddress(Address input)
static boolean
isValidAddress(java.lang.String input)
static boolean
isValidAddressBody(byte[] body)
static java.security.SecureRandom
secureRandom()
-
-
-
Field Detail
-
PRIVATE_KEY_SIZE
public static final int PRIVATE_KEY_SIZE
- See Also:
- Constant Field Values
-
PUBLIC_KEY_SIZE
public static final int PUBLIC_KEY_SIZE
- See Also:
- Constant Field Values
-
ADDRESS_SIZE
public static final int ADDRESS_SIZE
- See Also:
- Constant Field Values
-
ADDRESS_LENGTH_IN_HEX
public static final int ADDRESS_LENGTH_IN_HEX
- See Also:
- Constant Field Values
-
MIN_BOUNCY_CASTLE_VERSION
public static final double MIN_BOUNCY_CASTLE_VERSION
- See Also:
- Constant Field Values
-
-
Method Detail
-
createPrivateKey
public static Bytes createPrivateKey() throws java.security.InvalidAlgorithmParameterException, java.security.NoSuchAlgorithmException, java.security.NoSuchProviderException
- Throws:
java.security.InvalidAlgorithmParameterException
java.security.NoSuchAlgorithmException
java.security.NoSuchProviderException
-
getAddressHash
public static byte[] getAddressHash(java.math.BigInteger publicKey)
-
getAddressHash
public static byte[] getAddressHash(byte[] publicKey)
-
isValidAddress
public static boolean isValidAddress(Address input)
-
isValidAddress
public static boolean isValidAddress(java.lang.String input)
-
isValidAddressBody
public static boolean isValidAddressBody(byte[] body)
-
isContractAddress
public static boolean isContractAddress(Address address)
-
cleanHexPrefix
public static java.lang.String cleanHexPrefix(java.lang.String input)
-
containsHexPrefix
public static boolean containsHexPrefix(java.lang.String input)
-
getAddressHexPrefix
public static Address.AddressPrefix getAddressHexPrefix(java.lang.String input)
-
secureRandom
public static java.security.SecureRandom secureRandom()
-
isAndroidRuntime
public static boolean isAndroidRuntime()
-
-