mirror of
https://github.com/ton-blockchain/ton
synced 2025-03-09 15:40:10 +00:00
updated fift/func
This commit is contained in:
parent
b6f6788532
commit
d41ce55305
31 changed files with 717 additions and 66 deletions
22
crypto/func/test/w8.fc
Normal file
22
crypto/func/test/w8.fc
Normal file
|
|
@ -0,0 +1,22 @@
|
|||
int check_signatures(msg_hash, signatures, signers, bitmask_size) impure {
|
||||
var bitmask = 0;
|
||||
var id = -1;
|
||||
do {
|
||||
(id, var signature, var f) = signatures.udict_get_next?(32, id);
|
||||
if (f){
|
||||
var sig = signature.preload_bits(512);
|
||||
var public_key = -1;
|
||||
do {
|
||||
(public_key, var cs, var _found) = signers.udict_get_next?(256, public_key);
|
||||
if (_found){
|
||||
if (check_signature(msg_hash, sig, public_key)){
|
||||
var signer_index = cs~load_uint(bitmask_size);
|
||||
bitmask = bitmask | (1 << (signer_index - 1));
|
||||
}
|
||||
}
|
||||
} until (~ _found);
|
||||
;; signature~touch();
|
||||
}
|
||||
} until (~ f);
|
||||
return bitmask;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue