-
Js library: "JsCryptoService"
-
Java source: "src/main/java"
-
Test source: "src/test/java"
-
Jar: "build/libs"
-
Java docs: "build/docs/javadoc"
Ip address server and port set in file setting.json
By default
-
ip: 127.0.0.1
-
port: 8181
Generate a 32-byte random master key
Method: GET
Example request:
http://127.0.0.1:8181/crypto/generateSeed
Example response:
JSON format
{"seed":"2UiJ8Fte8bvuZSFjhdEtJ2etVvbirNRDTu8KEs9BFxch"}Seed in Base58 encoding
| Field | Type | Description |
|---|---|---|
| seed | String | master key in encode Base58 |
Method: GET
http://127.0.0.1:8181/crypto/generateKeyPair/{seed}
Example request
http://127.0.0.1:8181/crypto/generateKeyPair/DjUm5c4rat2xx8uD5TgUeWf1HreM3WzwrVaE39WemCxY
Answer in JSON format. Keys in Base58 encoding.
Example response:
{"publicKey":"BHJAVuNsvcjWy6jaaF85HHYzr9Up9rA4BW3xseUBs9Unw","privateKey":"4XeFFL279quugYpvkqSPHwsK68jumG7C9CWz7QzSWJapjSB1FGiSDSawg65YZorRt2GbAP25gGv8ooduMxWpp7HD"}| Field | Type | Description |
|---|---|---|
| message | String | The message you want to encrypt |
| publicKey | String | Public key of the second party in Base58 encoding |
| privateKey | String | My private key in Base58 encoding |
Method post
Example request
http://127.0.0.1:8181/crypto/encrypt
In body
{"message": "test message for encrypt and decrypt","publicKey":"217z8Wp4ztArt9qEzLhNgb4gErvnLQaqwmyxWo2DeZCA","privateKey":"4XeFFL279quugYpvkqSPHwsK68jumG7C9CWz7QzSWJapjSB1FGiSDSawg65YZorRt2GbAP25gGv8ooduMxWpp7HD"}Example response:
JSON format. Contains encrypted message in Base58 encoding
{"encrypted":"CjM7CfrxdZRbrtGdWx2iPnWcsCbS8MH4vA4kc3jgCsgvgDVzGtJNmkweApeE6BZgGy"}| Field | Type | Description |
|---|---|---|
| message | String | The message you want to dencrypt in Base58 encoding |
| publicKey | String | Public key of the second party in Base58 encoding |
| privateKey | String | My private key in Base58 encoding |
Method POST
Example request:
http://127.0.0.1:8181/crypto/decrypt
In body
{"message":"CjM7CfrxdZRbrtGdWx2iPnWcsCbS8MH4vA4kc3jgCsgvgDVzGtJNmkweApeE6BZgGy","publicKey":"BHJAVuNsvcjWy6jaaF85HHYzr9Up9rA4BW3xseUBs9Un","privateKey":"2mfVsVHpQ9jnwrpeCksjxUBrHMD2P8e1JN9VUdv5K8RBzfonS4EZDfAYxGh6afosj4uC5ryZJpLjizipEAy56E74"}Example response:
JSON format. Answer contatins decrypt message in UTF-8 encoding.
{"decrypted":"test message for encrypt and decrypt"}| Field | Type | Description |
|---|---|---|
| message | String | The message you want to sign in Base58 encoding |
| publicKey | String | My public key in Base58 encoding |
| privateKey | String | My private key in Base58 encoding |
Method POST
Example request:
http://127.0.0.1:8181/crypto/sign
In body
{"message": "CjM7CfrxdZRbrtGdWx2iPnWcsCbS8MH4vA4kc3jgCsgvgDVzGtJNmkweApeE6BZgGy", "publicKey":"BHJAVuNsvcjWy6jaaF85HHYzr9Up9rA4BW3xseUBs9Un","privateKey":"4XeFFL279quugYpvkqSPHwsK68jumG7C9CWz7QzSWJapjSB1FGiSDSawg65YZorRt2GbAP25gGv8ooduMxWpp7HD"}Example response:
JSON format. Answer contains sign in Base58 encoding.
{"signature":"26xAhHEhZ1kh4L9svvqb1RQFPgR2emHf592AchQywLrHPVfX8aLpwRUrS4gEg3XR2zUhYHE7d5FWbUrSo3Nni9K1"}| Field | Type | Description |
|---|---|---|
| message | String | The message you want to verify in Base58 encoding |
| sign | String | Sign message |
| publicKey | String | The public key of the person who signed |
Method POST
Example request:
http://127.0.0.1:8181/crypto/verifySignature
{"message": "CjM7CfrxdZRbrtGdWx2iPnWcsCbS8MH4vA4kc3jgCsgvgDVzGtJNmkweApeE6BZgGy","publicKey":"BHJAVuNsvcjWy6jaaF85HHYzr9Up9rA4BW3xseUBs9Un","signature":"26xAhHEhZ1kh4L9svvqb1RQFPgR2emHf592AchQywLrHPVfX8aLpwRUrS4gEg3XR2zUhYHE7d5FWbUrSo3Nni9K1"}Example response:
JSON format. In case if the signature verification was successful the system will return the value signatureVerify: "true"
{"signatureVerify":"true"}| Field | Type | Description |
|---|---|---|
| seed | String | master key |
| nonce | String | Number account |
Method POST
Example request:
http://127.0.0.1:8181/crypto/generateAccount
In body
{"seed":"2UiJ8Fte8bvuZSFjhdEtJ2etVvbirNRDTu8KEs9BFxch","nonce":4}Example response:
JSON format. Answer contains account seed, private/public key, account, number account.
{
"accountSeed": "6MerziUEfzicW2bzTogjmP4E4tZK7wnwAvoWurktmTHj",
"privateKey": "L1u9aTnn3jnrjTEdVT5kGbbNxM5GcVSmWC7pf9mu5zYGnE1RpgpZjfYvMKFqypKKmdRvSo79G2hMvSvVCKmnmvf",
"numAccount": 4,
"publicKey": "CeMcZK4P6no5YzpTbgakBH66Brf27FYybrVeDsMj2ZNd",
"account": "75aS9viw8C5rxa78AqutzLiMzwM9RS7pTk"
}| Field | Type | Description |
|---|---|---|
| accountSeed | String | seed account in Base58 encoding |
| privateKey | String | private key in Base58 encoding |
| numAccount | Integer | number account |
| publicKey | String | public key in Base58 encoding |
| account | String | account in Base58 encoding |
| Field | Type | Description |
|---|---|---|
| ip | String | ip address node |
| count | Integer | count telegramm |
Method GET
Example request
http://127.0.0.1:8181/crypto/generateTelegram?count=10&ip=127.0.0.1
Example response
JSON format. Answer contains count telegram sent.
{
"status":"10 telegram send"
}