Roman Khimov
|
d314f82db3
|
transaction: drop Network from Transaction
We only need it when signing/verifying.
|
2021-03-26 13:45:18 +03:00 |
|
Roman Khimov
|
df12adaa9e
|
crypto: remove crypto.Verifiable interface
We can now verify any hash.Hashable thing.
|
2021-03-26 13:45:18 +03:00 |
|
Anna Shaleva
|
e5cdecfa9f
|
core: fix transaction hashes
|
2021-03-18 17:57:54 +03:00 |
|
Roman Khimov
|
9d500b86fc
|
context: s/hex/data/ for JSON
See neo-project/neo#2394.
|
2021-03-12 13:10:24 +03:00 |
|
Roman Khimov
|
dc980b5847
|
sc/context: add network magic into the context
See neo-project/neo#2393, we need this to be able to sign multisig
transactions.
|
2021-03-12 12:59:14 +03:00 |
|
Roman Khimov
|
4462a6a6b7
|
change block/tx/extensible signing process, fix #1741
Sign [magic, hash], see neo-project/neo#2314.
|
2021-03-12 11:27:50 +03:00 |
|
Roman Khimov
|
3e9bd0be72
|
smartcontract: use base64 encoding for verifiable items
See neo-project/neo#1199.
|
2021-03-11 19:55:20 +03:00 |
|
Evgeniy Stratonikov
|
1cb25d3190
|
native: use proper types in manifest
|
2021-03-11 11:48:38 +03:00 |
|
Anna Shaleva
|
9015e50847
|
core: refactor Neo.Crypto.CheckMultisigWithECDsaSecpr1
Rename it to Neo.Crypto.CheckMultisig and remove `message` parameter.
|
2021-03-10 21:46:05 +03:00 |
|
Evgeniy Stratonikov
|
106c27782e
|
cli/wallet: allow to cosign with a contract
Contracts have empty verification script and their hash is
calculated differently.
|
2021-03-09 15:45:02 +03:00 |
|
Evgeniy Stratonikov
|
b9136dbfc0
|
smartcontract: use hash in GetWitness()
All necessary info must already be in context.
|
2021-03-09 15:45:02 +03:00 |
|
Evgeniy Stratonikov
|
20d2386414
|
smartcontract: use script instead of address in context
|
2021-03-09 15:45:02 +03:00 |
|
Evgeniy Stratonikov
|
7a176727ca
|
smartcontract: add GetMajorityNodeCount()
|
2021-03-09 13:46:44 +03:00 |
|
Roman Khimov
|
abee3b5b05
|
Merge pull request #1722 from nspcc-dev/fix/nep11
smartcontract: add NEP-11 standard check
|
2021-02-22 22:27:09 +03:00 |
|
Evgeniy Stratonikov
|
b38443fe20
|
smartcontract: add checks for onNEP*Payable methods
When they are present in contract, we want them
to have correct signature.
|
2021-02-19 17:06:07 +03:00 |
|
Evgeniy Stratonikov
|
d89f055697
|
smartcontract: add checks for parameter names
It can be annoying to use parameter names as specified by standard,
so a separate `CheckABI` is supported.
|
2021-02-19 17:06:07 +03:00 |
|
Evgeniy Stratonikov
|
9d4ccf0fcc
|
smartcontract: add test for Optional methods
They should be checked only if name + parameter count matches.
This is how methods are identified in NEO.
|
2021-02-19 17:06:07 +03:00 |
|
Evgeniy Stratonikov
|
eb26a61078
|
smartcontract: remove IsNEP17()
|
2021-02-19 17:06:07 +03:00 |
|
Evgeniy Stratonikov
|
9c0bbd0bfd
|
smartcontract: add NEP-11 standard check
The only method missing is name, because it is
provided in manifest.
|
2021-02-19 17:06:07 +03:00 |
|
Anna Shaleva
|
488e75a246
|
cli: add filebytes parameter type
|
2021-02-19 10:52:45 +03:00 |
|
Anna Shaleva
|
0f1473897b
|
core: temp manifest.Extra marshalling fix
Manifest.Extra still serialized as JSON message with undefined order
of items, so it affects contract states dumps.
|
2021-02-12 23:48:30 +03:00 |
|
Roman Khimov
|
a3abdbd7f0
|
manifest: add duplicate events/methods checks to ABI
Refs. #1699.
|
2021-02-09 22:31:26 +03:00 |
|
Roman Khimov
|
dc3967ae7b
|
manifest: add manifest validity checks
Refs. #1699.
|
2021-02-09 22:31:26 +03:00 |
|
Roman Khimov
|
284476c070
|
manifest: add Permission and Permissions validity checks
Refs. #1699.
|
2021-02-09 22:31:26 +03:00 |
|
Roman Khimov
|
15ed905757
|
manifest: add validity checks for Parameter
Refs. #1699.
|
2021-02-09 22:31:26 +03:00 |
|
Roman Khimov
|
f0c3066ef6
|
manifest: add method validity check
Refs. #1699.
|
2021-02-09 22:31:26 +03:00 |
|
Roman Khimov
|
f3c761e4c2
|
manifest: move Parameter into a file of its own
|
2021-02-09 22:31:26 +03:00 |
|
Roman Khimov
|
0b2e9312af
|
manifest: add event validity check
Refs. #1699.
|
2021-02-09 22:31:26 +03:00 |
|
Roman Khimov
|
f78e3fb290
|
manifest: move Event into a file of its own
|
2021-02-09 22:31:26 +03:00 |
|
Roman Khimov
|
e9ea89b4e3
|
manifest: add group signature length check
Refs. #1699.
|
2021-02-09 22:31:24 +03:00 |
|
Roman Khimov
|
296c7a10fc
|
manifest: move Group code into a file of its own
|
2021-02-09 22:31:22 +03:00 |
|
Roman Khimov
|
1a4958b1d5
|
manifest: add ABI validity check
Some methods must be defined in a valid ABI. Refs. neo-project/neo#2263.
|
2021-02-08 13:27:39 +03:00 |
|
Roman Khimov
|
5ba074b4cf
|
manifest: return an error from IsValid
Be more specific.
|
2021-02-08 12:04:57 +03:00 |
|
Roman Khimov
|
211fe307ee
|
manifest: move ABI code into file of its own
Make it a little more convenient to work with it.
|
2021-02-08 11:55:16 +03:00 |
|
Roman Khimov
|
60dfffc574
|
manifest: remove no longer used Serializable interface
It was used when manifests were saved into JSON.
|
2021-02-08 10:52:53 +03:00 |
|
Roman Khimov
|
e4b5b59663
|
Merge pull request #1704 from nspcc-dev/binary_manifest
core: serialise manifest as stackitem
|
2021-02-05 23:58:07 +03:00 |
|
Roman Khimov
|
cd9b34416e
|
native: call onNEP11Transfer for NEP-11 transfers
See neo-project/neo#2287.
|
2021-02-05 20:48:45 +03:00 |
|
Anna Shaleva
|
a2715404d0
|
core: serialise manifest as stackitem
|
2021-02-05 19:10:15 +03:00 |
|
Roman Khimov
|
a442e1530d
|
native: rename onPayment into onNEP17Payment
Follow neo-project/neo#2287.
|
2021-02-05 16:09:51 +03:00 |
|
Evgeniy Stratonikov
|
73f888f02e
|
core: allow to overload contract methods
Multiple methods with different parameter count can co-exist.
|
2021-01-27 12:51:07 +03:00 |
|
Evgeniy Stratonikov
|
719dceff77
|
nef: merge Compiler and Version fields
|
2021-01-19 11:19:28 +03:00 |
|
Evgeniy Stratonikov
|
0bbdee2ce1
|
nef: add Reserved bytes
|
2021-01-19 11:19:28 +03:00 |
|
Evgeniy Stratonikov
|
52843fc1bf
|
nef: add Tokens field
|
2021-01-19 11:19:24 +03:00 |
|
Evgenii Stratonikov
|
dbe81f9b80
|
smartcontract: move flags to a separate package
|
2021-01-14 17:52:09 +03:00 |
|
Evgeniy Stratonikov
|
11191c0a08
|
nef: support JSON serialization
|
2021-01-13 15:26:35 +03:00 |
|
Roman Khimov
|
2e0fe370cf
|
nef: lower MaxScriptLength
Follow neo-project/neo#2119 changes.
|
2020-12-14 15:24:15 +03:00 |
|
Roman Khimov
|
fc361213a7
|
Merge pull request #1608 from nspcc-dev/core/callflags
core: adjust call flags
|
2020-12-11 19:23:15 +03:00 |
|
Anna Shaleva
|
fadbae8997
|
core: rename call flags
Also new States flag is added and ReadOnly flag is adjusted.
|
2020-12-11 10:34:01 +03:00 |
|
Evgenii Stratonikov
|
ec1ff42872
|
manifest: add Safe flag for NEP-17 methods
|
2020-12-10 18:04:49 +03:00 |
|
Evgenii Stratonikov
|
ea4d14d20d
|
manifest/standard: check Safe flag in Comply()
|
2020-12-08 13:47:05 +03:00 |
|