diff --git a/pkg/compiler/syscall.go b/pkg/compiler/syscall.go index 21f6bda83..e47a9ca75 100644 --- a/pkg/compiler/syscall.go +++ b/pkg/compiler/syscall.go @@ -6,8 +6,10 @@ var syscalls = map[string]map[string]string{ "Deserialize": "System.Binary.Deserialize", }, "crypto": { - "ECDsaSecp256r1Verify": "Neo.Crypto.VerifyWithECDsaSecp256r1", - "ECDsaSecp256k1Verify": "Neo.Crypto.VerifyWithECDsaSecp256k1", + "ECDsaSecp256r1Verify": "Neo.Crypto.VerifyWithECDsaSecp256r1", + "ECDsaSecp256k1Verify": "Neo.Crypto.VerifyWithECDsaSecp256k1", + "ECDSASecp256r1CheckMultisig": "Neo.Crypto.CheckMultisigWithECDsaSecp256r1", + "ECDSASecp256k1CheckMultisig": "Neo.Crypto.CheckMultisigWithECDsaSecp256k1", }, "enumerator": { "Concat": "System.Enumerator.Concat", diff --git a/pkg/interop/crypto/crypto.go b/pkg/interop/crypto/crypto.go index 91f932ce7..6e894465b 100644 --- a/pkg/interop/crypto/crypto.go +++ b/pkg/interop/crypto/crypto.go @@ -19,3 +19,15 @@ func ECDsaSecp256r1Verify(msg []byte, pub []byte, sig []byte) bool { func ECDsaSecp256k1Verify(msg []byte, pub []byte, sig []byte) bool { return false } + +// ECDSASecp256r1CheckMultisig checks multiple ECDSA signatures at once. It uses +// `Neo.Crypto.CheckMultisigWithECDsaSecp256r1` syscall. +func ECDSASecp256r1CheckMultisig(msg []byte, pubs [][]byte, sigs [][]byte) bool { + return false +} + +// ECDSASecp256k1CheckMultisig checks multiple ECDSA signatures at once. It uses +// `Neo.Crypto.CheckMultisigWithECDsaSecp256k1` syscall. +func ECDSASecp256k1CheckMultisig(msg []byte, pubs [][]byte, sigs [][]byte) bool { + return false +}