MCPcopy Create free account
hub / github.com/TelegramMessenger/cocoon / sign_message

Method sign_message

runners/BaseRunner.cpp:1091–1106  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1089 */
1090
1091td::Ref<vm::Cell> BaseRunner::sign_message(td::Ed25519::PrivateKey &pk, td::Ref<vm::Cell> msg) {
1092 auto hash = msg->get_hash();
1093 auto signature = pk.sign(hash.as_slice()).move_as_ok();
1094 CHECK(signature.size() == 64);
1095
1096 vm::CellSlice cs{vm::NoVm{}, msg};
1097
1098 vm::CellBuilder cb;
1099 cb.store_bytes(signature.as_slice());
1100 cb.store_bits(cs.as_bitslice());
1101 while (cs.have_refs()) {
1102 cb.store_ref(cs.fetch_ref());
1103 }
1104
1105 return cb.finalize();
1106}
1107
1108td::Ref<vm::Cell> BaseRunner::sign_and_wrap_message(td::Ed25519::PrivateKey &pk, td::Ref<vm::Cell> msg,
1109 const block::StdAddress &return_excesses_to) {

Callers

nothing calls this directly

Calls 3

signMethod · 0.80
as_sliceMethod · 0.80
finalizeMethod · 0.45

Tested by

no test coverage detected