get 3 big prime number p, q, r
set e = 0x10001, make edf % (p – 1)(q – 1) (r – 1) = 1
N = pqr
wallet key:[d, N]
central repository key: [f, N]
public key: [e, N]
suppose the action, transfer $100 to gujun.
the raw statement would be: '^^USD||12345678||100->gujun$$'
^^: begin place holder
USD:Symbol
12345678:unique id
100: quantity
gujun: recipient
$$: end place holder
wallet key:
d747cc90b64b48e4c41cf365be6d7a1f26809692fda7d5ca3958f3012a6fa88e9de37ebd7065a93
a62b551be924cd04cab1644b6ffe0fdea1e5ff09c5324bdd7ea23e7079337073e15cc5a667772d8
fdca6f24cee1ca3335a8eedef692ae3db84b8a00eaa4e45d754dacbd0d0626f49846dfaee7b03d0
0ab0449b1d9fc6bf3f82269f204607f80fe661843d7844596922fb1df035887a6eb56846e013138
b98acd4fc6f071597ef7de4162caf71fe514e4ffdddfeaa5fcffa0f71230ea52f69d317b9be6d2f
f66403db0160221ad50121a524ff0b2f315668857741c12a71af99279d1768493318a8d3fb24dcf
cdfae3f1a2b93e735697cbade7f9a747f89c6a@@1786cf6e5703ff210903b154898cace4597fdbe4002913199aa13c5ad329ad85586ea532a97a3921acef050577d8f7356b10ee1be4239aa03615b6f37e86dedf0ec988b78358b19e78b9fc008e94a6b9876307a4691382d5ef9c184c08ff8badf1881c8e172e75ad84dc96e6e14194c8f2a1b63a81a971337ec019ff20bc533cbfcd351ad6d40b711336f3bdb753bddee774a8a9fea6efc88a9005e927109ccc048dccae41797d454bce35632ec99be9f27503740da66d2fd64b8a2ec2b83a1c
repository key:
d747cc90b64b48e4c41cf365be6d7a1f26809692fda7d5ca3958f3012a6fa88e9de37ebd7065a93
a62b551be924cd04cab1644b6ffe0fdea1e5ff09c5324bdd7ea23e7079337073e15cc5a667772d8
fdca6f24cee1ca3335a8eedef692ae3db84b8a00eaa4e45d754dacbd0d0626f49846dfaee7b03d0
0ab0449b1d9fc6bf3f82269f204607f80fe661843d7844596922fb1df035887a6eb56846e013138
b98acd4fc6f071597ef7de4162caf71fe514e4ffdddfeaa5fcffa0f71230ea52f69d317b9be6d2f
f66403db0160221ad50121a524ff0b2f315668857741c12a71af99279d1768493318a8d3fb24dcf
cdfae3f1a2b93e735697cbade7f9a747f89c6a@@7f92785cb6d1e377f982955c0f4a039f58e8aa715a30750d018ddde56775e072b34c74205168c80e6f64a4b517477bb365cc6adb01d1b794588c7edea9bee74d9f31dd730a51850b768541f4d20330a8f1777ced25d8a363e7cff9c3deeef6eb4778bfe18d1348e0279b237ebf290c575019eb791c76b4f866b36b02cc1d927f7a19e97388561b75c5a23dd01865731eb30621cb3df608f79623e61ad47c8809bccd433596d899499ca560da2365247acfe14b22b8d3df2503f9ed96aba76a74fef7a8378843661f750fd9dfb118cee3afa80fdbf806acf7f158b618144eb67d09f1b085475548c142e3d4c03e20bb82afcac6f4d95f800def22c11f65ae5b51
public key:
d747cc90b64b48e4c41cf365be6d7a1f26809692fda7d5ca3958f3012a6fa88e9de37ebd7065a93
a62b551be924cd04cab1644b6ffe0fdea1e5ff09c5324bdd7ea23e7079337073e15cc5a667772d8
fdca6f24cee1ca3335a8eedef692ae3db84b8a00eaa4e45d754dacbd0d0626f49846dfaee7b03d0
0ab0449b1d9fc6bf3f82269f204607f80fe661843d7844596922fb1df035887a6eb56846e013138
b98acd4fc6f071597ef7de4162caf71fe514e4ffdddfeaa5fcffa0f71230ea52f69d317b9be6d2f
f66403db0160221ad50121a524ff0b2f315668857741c12a71af99279d1768493318a8d3fb24dcf
cdfae3f1a2b93e735697cbade7f9a747f89c6a@@300010
these 3 keys forms a clique which shares the same pqr:
d747cc90b64b48e4c41cf365be6d7a1f26809692fda7d5ca3958f3012a6fa88e9de37ebd7065a93
a62b551be924cd04cab1644b6ffe0fdea1e5ff09c5324bdd7ea23e7079337073e15cc5a667772d8
fdca6f24cee1ca3335a8eedef692ae3db84b8a00eaa4e45d754dacbd0d0626f49846dfaee7b03d0
0ab0449b1d9fc6bf3f82269f204607f80fe661843d7844596922fb1df035887a6eb56846e013138
b98acd4fc6f071597ef7de4162caf71fe514e4ffdddfeaa5fcffa0f71230ea52f69d317b9be6d2f
f66403db0160221ad50121a524ff0b2f315668857741c12a71af99279d1768493318a8d3fb24dcf
cdfae3f1a2b93e735697cbade7f9a747f89c6a
it is 2048 bits long
the encoding here is the reverse order of normal hand writing. say one hundred and twenty three, is represented 321 instead of 123
the raw statement '^^USD||12345678||100->gujun$$' would be transformed to its ascii code representation
e500e500550035004400c700c70013002300330043005300630073008300c700c70013000300030
0d200e30076005700a6005700e60042004200
every char is mapped to a 4 digits integer, also it is in reverse order. '^' is 5e, we make it in 'e500'
the proposal is produced with
e500e500550035004400c700c70013002300330043005300630073008300c700c70013000300030
0d200e30076005700a6005700e60042004200 and d747cc90b64b48e4c41cf365be6d7a1f26809692fda7d5ca3958f3012a6fa88e9de37ebd7065a93
a62b551be924cd04cab1644b6ffe0fdea1e5ff09c5324bdd7ea23e7079337073e15cc5a667772d8
fdca6f24cee1ca3335a8eedef692ae3db84b8a00eaa4e45d754dacbd0d0626f49846dfaee7b03d0
0ab0449b1d9fc6bf3f82269f204607f80fe661843d7844596922fb1df035887a6eb56846e013138
b98acd4fc6f071597ef7de4162caf71fe514e4ffdddfeaa5fcffa0f71230ea52f69d317b9be6d2f
f66403db0160221ad50121a524ff0b2f315668857741c12a71af99279d1768493318a8d3fb24dcf
cdfae3f1a2b93e735697cbade7f9a747f89c6a@@1786cf6e5703ff210903b154898cace4597fdbe4002913199aa13c5ad329ad85586ea532a97a3921acef050577d8f7356b10ee1be4239aa03615b6f37e86dedf0ec988b78358b19e78b9fc008e94a6b9876307a4691382d5ef9c184c08ff8badf1881c8e172e75ad84dc96e6e14194c8f2a1b63a81a971337ec019ff20bc533cbfcd351ad6d40b711336f3bdb753bddee774a8a9fea6efc88a9005e927109ccc048dccae41797d454bce35632ec99be9f27503740da66d2fd64b8a2ec2b83a1c
proposal =
bb84256a1478e6e351a33eb5156ecbf641ced1aafa764054374b752f010d9f61ff35831a6111551
90b9b93d18f8065500fed0d58b3d0002f54d34fd21130bbc9a308f854602449d7d2d7d7c2aaf704
42d7b579a5314120190412edd0d66275ae04dc64ec21c9d0397e602c62b3e080cb86e5ee285b79d
f810f6bb02cd04e962c326d4a428ce0d9b79e129411541d2a025b42fb89873a2f17c662928d67ba
df2428f4d57246f7184c68639481f9f29b2dd61cd15d0954a52f85ec5de61b0f47e1549bc3c6a05
4458fe9362dc67772acb59a18078adaa6b104bddfc1f1348474c1649c8199a4c0a60893aa691c27
1c78f6b276c68868ef3d41b42fa990619a025a
the verdict is produced with
proposal and d747cc90b64b48e4c41cf365be6d7a1f26809692fda7d5ca3958f3012a6fa88e9de37ebd7065a93
a62b551be924cd04cab1644b6ffe0fdea1e5ff09c5324bdd7ea23e7079337073e15cc5a667772d8
fdca6f24cee1ca3335a8eedef692ae3db84b8a00eaa4e45d754dacbd0d0626f49846dfaee7b03d0
0ab0449b1d9fc6bf3f82269f204607f80fe661843d7844596922fb1df035887a6eb56846e013138
b98acd4fc6f071597ef7de4162caf71fe514e4ffdddfeaa5fcffa0f71230ea52f69d317b9be6d2f
f66403db0160221ad50121a524ff0b2f315668857741c12a71af99279d1768493318a8d3fb24dcf
cdfae3f1a2b93e735697cbade7f9a747f89c6a@@7f92785cb6d1e377f982955c0f4a039f58e8aa715a30750d018ddde56775e072b34c74205168c80e6f64a4b517477bb365cc6adb01d1b794588c7edea9bee74d9f31dd730a51850b768541f4d20330a8f1777ced25d8a363e7cff9c3deeef6eb4778bfe18d1348e0279b237ebf290c575019eb791c76b4f866b36b02cc1d927f7a19e97388561b75c5a23dd01865731eb30621cb3df608f79623e61ad47c8809bccd433596d899499ca560da2365247acfe14b22b8d3df2503f9ed96aba76a74fef7a8378843661f750fd9dfb118cee3afa80fdbf806acf7f158b618144eb67d09f1b085475548c142e3d4c03e20bb82afcac6f4d95f800def22c11f65ae5b51
verdict =
7057cace23ae29da6313e1700cefcda5d6c6de574cd42aee38ea5053bb6455e565b8ac0f6f76087
5a6d33c7c5e71f6ae7f24dcae995b5cb58dea5f81d3fe315c6e09b7e348b1ed3125e5aee453843c
563320142acef01551c9a21069189e73483ec4845f37a5f8ddca8114ad0a2d05991981305f1597a
d539a8614b3dda29561d11af97d85508c0347e60b5167561503d6a0b12433496999d45fc098beda
d255176c4f9a01de2c9ab1c0ba9deec18725e11221b84a45982a6e0940969a3a394092f2a142a0e
d4d10dc0921234cde046de8c09422284a614ba75f109818749d5e7f2c9ae00fb960bde586026e2f
77ef4618f22cc0938c39d7394bc113f19b1d79
the verdict and public key
d747cc90b64b48e4c41cf365be6d7a1f26809692fda7d5ca3958f3012a6fa88e9de37ebd7065a93
a62b551be924cd04cab1644b6ffe0fdea1e5ff09c5324bdd7ea23e7079337073e15cc5a667772d8
fdca6f24cee1ca3335a8eedef692ae3db84b8a00eaa4e45d754dacbd0d0626f49846dfaee7b03d0
0ab0449b1d9fc6bf3f82269f204607f80fe661843d7844596922fb1df035887a6eb56846e013138
b98acd4fc6f071597ef7de4162caf71fe514e4ffdddfeaa5fcffa0f71230ea52f69d317b9be6d2f
f66403db0160221ad50121a524ff0b2f315668857741c12a71af99279d1768493318a8d3fb24dcf
cdfae3f1a2b93e735697cbade7f9a747f89c6a@@300010 will produce e500e500550035004400c700c70013002300330043005300630073008300c700c70013000300030
0d200e30076005700a6005700e60042004200000000000000
e500e500550035004400c700c70013002300330043005300630073008300c700c70013000300030
0d200e30076005700a6005700e60042004200000000000000 is the representation of the raw statement, with extra zeros in the right, it is making sense to strip the 0 in the right, given it is represented in the reverse order of normal hand writing.
For more information, please refer to
https://github.com/rsacpp/clique3