|
|
||
|---|---|---|
| .. | ||
| BchCryptoVerifier.java | ||
| CryptoSelfTest.java | ||
| Ed25519Util.java | ||
| HashSHA256Util.java | ||
| README.md | ||
utils.crypto
Пакет отвечает за криптографию — подписи и хэши блоков.
Используется при создании и проверке целостности .bch-блоков.
Классы
Ed25519Util
Работает с подписями Ed25519.
Методы:
generatePrivateKey()— создать приватный ключ (32 байта)generatePrivateKeyFromString(String)— детерминированный ключ из строкиderivePublicKey(byte[32])— получить публичный ключ (32 байта)sign(byte[], byte[32])— подписать данные (64-байтная подпись)verify(byte[], byte[64], byte[32])— проверить подпись
HashUtil
Вычисляет SHA-256.
Методы:
sha256(byte[])→[32]— вернуть хэш массиваSha256— вложенный класс для пошагового хэширования
BchCryptoVerifier
Проверяет подпись и хэш блока перед записью в блокчейн.
Методы:
verifyAll(userLogin, blockchainId, prevHash32, rawBytes, signature64, hash32, publicKey32)
→true/false— корректна ли подпись и хэшbuildPreimage(...)— собирает байты, которые подписываются: