SHA256
34 lines
1.6 KiB
Java
34 lines
1.6 KiB
Java
package utils.config;
|
|
|
|
/**
|
|
* ShineSignatureConstants — строковые префиксы/домены, входящие в подписываемые сообщения.
|
|
*
|
|
* ВАЖНО:
|
|
* - префикс добавляется в начало "чтобы подпись нельзя было переиспользовать" между разными типами сообщений.
|
|
* - менять значения после релиза нельзя, иначе старые подписи перестанут проверяться.
|
|
*/
|
|
public final class ShineSignatureConstants {
|
|
|
|
private ShineSignatureConstants() {}
|
|
|
|
/** Подписываемые данные параметра пользователя: prefix + login + param + time_ms + value */
|
|
public static final String USER_PARAMETER_PREFIX = "SHiNe/UserParameter:";
|
|
|
|
/** TAG в HeaderBody (genesis). ASCII "SHiNe". */
|
|
public static final String BLOCKCHAIN_HEADER_TAG = "SHiNe";
|
|
|
|
/** DOMAIN для preimage при расчёте hash32 блока. ASCII "SHiNe". */
|
|
public static final String BLOCK_HASH_DOMAIN = "SHiNe";
|
|
|
|
|
|
// ===================== Фиксированные размеры =====================
|
|
|
|
/** Длина SHA-256 хэша, который хранится в блоке. */
|
|
public static final int HASH32_LEN = 32;
|
|
|
|
/** Длина подписи Ed25519, которая хранится в блоке. */
|
|
public static final int SIGNATURE64_LEN = 64;
|
|
|
|
/** Длина публичного ключа Ed25519. */
|
|
public static final int ED25519_PUBLIC_KEY32_LEN = 32;
|
|
} |