The KMS Creator Verifier verifies the generated encrypted seed from the KMS Creator.
cargo build --release
Reproducible builds can be done using Nix. The monorepo provides a Nix flake which includes this project and can be used to trigger builds:
nix build -v .#<flavor>.kms.creator-verifier.<output>
Supported flavors:
gnu
musl
Supported outputs:
default
, same ascompressed
uncompressed
compressed
, usingupx
$ ./target/release/creator-verifier --help
Verify creator signatures and recover public keys
Usage: creator-verifier <MESSAGE_HEX>
Arguments:
<MESSAGE_HEX> Hex string containing message followed by 65-byte signature
Options:
-h, --help Print help
-V, --version Print version
$ ./target/release/creator-verifier 544d4b69000100009293c4308e0ebc7f830be9a963f343358c4875d67c36eb1dc0c3250cb9438a43f0399ed4fc7e0b80ccb99b106136e06bbaecb90bc460843d33b632beb3537a7d1c42531ad1b43bce0015ba7e7fb7ed82fed9a0d200ac11dc646ca22b743daec9baa39d689c350a3e70ce85979e856e9cac3c31f45febe28510360beb78495932a6e06c2a5fd6caa0adc9dff0fef20d9ff4916199bcbcc450cf36031706fbe58b82fcf808e76f801924ec66a3ea5bcaec0fb33619cf5df6314b43eca506a25392b1e042126a63744f35bd39403c6d73e81a4efaf0e0251563ee3eacc2ce419ae5a1c139d5d321761a9292c430868c3d012a5d524f0939e4ee4d60b738b4c44448ec286a5361e15ffbf2641e2df25363a204a738231e5f1a9621999741da01b87b22636f6e646974696f6e223a7b22636861696e223a312c22636f6e646974696f6e54797065223a22636f6e7472616374222c22636f6e747261637441646472657373223a22307843374430383443326536424341633030374433424146433431353438356133383038303343306265222c2266756e6374696f6e416269223a7b22696e70757473223a5b7b22696e7465726e616c54797065223a2261646472657373222c226e616d65223a22222c2274797065223a2261646472657373227d5d2c226e616d65223a2269735665726966696564222c226f757470757473223a5b7b22696e7465726e616c54797065223a22626f6f6c222c226e616d65223a22222c2274797065223a22626f6f6c227d5d2c2273746174654d75746162696c697479223a2276696577222c2274797065223a2266756e6374696f6e227d2c226d6574686f64223a2269735665726966696564222c22706172616d6574657273223a5b223a7573657241646472657373225d2c2272657475726e56616c756554657374223a7b22636f6d70617261746f72223a223d3d222c2276616c7565223a747275657d7d2c2276657273696f6e223a22312e302e30227dc441cd0ad8db7d03074a07437a39025a8deea6a72c433dedc45375b95d28257dc0300ae70507050f75c5d5c31c50b167bdde4c06ac789b22641defe91de9442fd74d1b22a4b1a5baae6b56d0818086f030e1c3e9c7e8316c0a3219c222293df66acfca707fa4a6354fcd0034b8466c45f52f476ff6591aa031601b33eb4b53d015a4561c
Recovered msg: 544d4b69000100009293c4308e0ebc7f830be9a963f343358c4875d67c36eb1dc0c3250cb9438a43f0399ed4fc7e0b80ccb99b106136e06bbaecb90bc460843d33b632beb3537a7d1c42531ad1b43bce0015ba7e7fb7ed82fed9a0d200ac11dc646ca22b743daec9baa39d689c350a3e70ce85979e856e9cac3c31f45febe28510360beb78495932a6e06c2a5fd6caa0adc9dff0fef20d9ff4916199bcbcc450cf36031706fbe58b82fcf808e76f801924ec66a3ea5bcaec0fb33619cf5df6314b43eca506a25392b1e042126a63744f35bd39403c6d73e81a4efaf0e0251563ee3eacc2ce419ae5a1c139d5d321761a9292c430868c3d012a5d524f0939e4ee4d60b738b4c44448ec286a5361e15ffbf2641e2df25363a204a738231e5f1a9621999741da01b87b22636f6e646974696f6e223a7b22636861696e223a312c22636f6e646974696f6e54797065223a22636f6e7472616374222c22636f6e747261637441646472657373223a22307843374430383443326536424341633030374433424146433431353438356133383038303343306265222c2266756e6374696f6e416269223a7b22696e70757473223a5b7b22696e7465726e616c54797065223a2261646472657373222c226e616d65223a22222c2274797065223a2261646472657373227d5d2c226e616d65223a2269735665726966696564222c226f757470757473223a5b7b22696e7465726e616c54797065223a22626f6f6c222c226e616d65223a22222c2274797065223a22626f6f6c227d5d2c2273746174654d75746162696c697479223a2276696577222c2274797065223a2266756e6374696f6e227d2c226d6574686f64223a2269735665726966696564222c22706172616d6574657273223a5b223a7573657241646472657373225d2c2272657475726e56616c756554657374223a7b22636f6d70617261746f72223a223d3d222c2276616c7565223a747275657d7d2c2276657273696f6e223a22312e302e30227dc441cd0ad8db7d03074a07437a39025a8deea6a72c433dedc45375b95d28257dc0300ae70507050f75c5d5c31c50b167bdde4c06ac789b22641defe91de9442fd74d1b
Base64 msg: VE1LaQABAACSk8Qwjg68f4ML6alj80M1jEh11nw26x3AwyUMuUOKQ/A5ntT8fguAzLmbEGE24Gu67LkLxGCEPTO2Mr6zU3p9HEJTGtG0O84AFbp+f7ftgv7ZoNIArBHcZGyiK3Q9rsm6o51onDUKPnDOhZeehW6crDwx9F/r4oUQNgvreElZMqbgbCpf1sqgrcnf8P7yDZ/0kWGZvLzEUM82AxcG++WLgvz4COdvgBkk7Gaj6lvK7A+zNhnPXfYxS0PspQaiU5Kx4EISamN0TzW9OUA8bXPoGk768OAlFWPuPqzCzkGa5aHBOdXTIXYakpLEMIaMPQEqXVJPCTnk7k1gtzi0xERI7ChqU2HhX/vyZB4t8lNjogSnOCMeXxqWIZmXQdoBuHsiY29uZGl0aW9uIjp7ImNoYWluIjoxLCJjb25kaXRpb25UeXBlIjoiY29udHJhY3QiLCJjb250cmFjdEFkZHJlc3MiOiIweEM3RDA4NEMyZTZCQ0FjMDA3RDNCQUZDNDE1NDg1YTM4MDgwM0MwYmUiLCJmdW5jdGlvbkFiaSI6eyJpbnB1dHMiOlt7ImludGVybmFsVHlwZSI6ImFkZHJlc3MiLCJuYW1lIjoiIiwidHlwZSI6ImFkZHJlc3MifV0sIm5hbWUiOiJpc1ZlcmlmaWVkIiwib3V0cHV0cyI6W3siaW50ZXJuYWxUeXBlIjoiYm9vbCIsIm5hbWUiOiIiLCJ0eXBlIjoiYm9vbCJ9XSwic3RhdGVNdXRhYmlsaXR5IjoidmlldyIsInR5cGUiOiJmdW5jdGlvbiJ9LCJtZXRob2QiOiJpc1ZlcmlmaWVkIiwicGFyYW1ldGVycyI6WyI6dXNlckFkZHJlc3MiXSwicmV0dXJuVmFsdWVUZXN0Ijp7ImNvbXBhcmF0b3IiOiI9PSIsInZhbHVlIjp0cnVlfX0sInZlcnNpb24iOiIxLjAuMCJ9xEHNCtjbfQMHSgdDejkCWo3upqcsQz3txFN1uV0oJX3AMArnBQcFD3XF1cMcULFnvd5MBqx4myJkHe/pHelEL9dNGw==
Recovered pubkey: 0495d25b550b5b8b33640524fe7b8ae96c5170b750ecbe566a91ebe438b7828e69c1ab1b3ac748f925ee64ac75067fc1ca6bf73b833cf53d584758d61835ca3520
Recovered address: 0xF263fe37be32f672372486063615C99C230E4aAc
This project is licensed under the GNU AGPLv3 or any later version. See LICENSE.txt.