mirror of
https://github.com/trezor/trezor-firmware.git
synced 2024-12-18 12:28:09 +00:00
bb1c638d3b
The goal is to allow Trezor 1 to create TPoS contracts for Stakenet. Last year, Stakenet introduced a hard-fork [1] to change the way TPoS contracts are created, instead of a custom signature method, now it works with the output from the signMessage method, while this works for Trezor T, it doesn't work for Trezor 1 due to the 80 bytes limit on the OP_RETURN output while Stakenet allows up to 150 bytes [2], in a gitter discussion [3] we concluded that the change should be fine. The hard-fork was introduced because we couldn't got our TPoS contracts PR accepted [4], the OP_RETURN still contains the same data, its just stored in a different way: - The TPoS address, where the coins to stake are stored, and where rewards are received. - The merchant address, where the merchant receives its commission. - The contract commission. - The TPoS collateral signature (this is what uses the signMessage now). At last, there is an example transaction creating a TPoS contract [5]. [1]: https://github.com/X9Developers/XSN/pull/154 [2]: https://github.com/X9Developers/XSN/blob/master/src/script/standard.h#L34 [3]: https://gitter.im/trezor/community?at=6064c41e940f1d555e2ea670 [4]: https://github.com/trezor/trezor-firmware/pull/140 [5]: https://xsnexplorer.io/transactions/858feb31097501cf68d698cde104cf778ec51ff3668e943404b549a5dd2f5792 |
||
---|---|---|
.. | ||
bootloader | ||
demo | ||
emulator | ||
firmware | ||
gen | ||
gitian | ||
intermediate_fw | ||
script | ||
vendor | ||
.dockerignore | ||
.gitignore | ||
buttons.c | ||
buttons.h | ||
common.c | ||
common.h | ||
COPYING | ||
flash.c | ||
flash.h | ||
layout.c | ||
layout.h | ||
Makefile | ||
Makefile.include | ||
memory_app_0.0.0.ld | ||
memory_app_1.0.0.ld | ||
memory_app_1.8.0.ld | ||
memory_app_fastflash.ld | ||
memory.c | ||
memory.h | ||
memory.ld | ||
norcow_config.h | ||
oled.c | ||
oled.h | ||
README.md | ||
rng.c | ||
rng.h | ||
secbool.h | ||
setup.c | ||
setup.h | ||
startup.S | ||
supervise.c | ||
supervise.h | ||
timer.c | ||
timer.h | ||
usb21_standard.c | ||
usb21_standard.h | ||
usb_private.h | ||
usb_standard.c | ||
util.c | ||
util.h | ||
webusb_defs.h | ||
webusb.c | ||
webusb.h | ||
winusb_defs.h | ||
winusb.c | ||
winusb.h |
Trezor Legacy
Firmware currently running on Model One. If you are working on a new feature, you probably want to contribute this to Core.
See docs/legacy
for more info.