- signTransaction allows address_n to be bip44 path string
TrezorConnect.setProxy
method. Allow @trezor/blockchain-link using TOR proxy.- Support for Electrum backend
- Some methods not throwing
ui-device_firmware_unsupported
when the current device firmware didn't support the method. - Ethereum: EthereumSignTypedData now supports signing domain-only data, i.e. when
primaryType
is equal toEIP712Domain
. - GetAccountInfo method in popup mode
- @trezor/blockchain-link 2.0.0 use workers as commonjs modules in nodejs and react-native env.
- Ethereum: EthereumSignTypedData must always have at least Trezor T parameters.
- AOPP
- 1.10.5 FW release
- Support for cardano in GetAccountInto method
- Ethereum: Support for EthereumSignTypedData operation #983 and #1015
- Management: Wipe device from bootloader mode
- use modules instead of blockchain-link builds in nodejs
- debugLink methods removed
- loadDevice method removed
- Communication with trezor bridge in node.js environment
- Race condition for RebootToBootloader message
- Encoding protobuf messages which contain number (sent as string) which is over Number.MAX_SAVE_INTEGER in browser environment
- Stellar: convert manageBuyOffer.buyAmount to manageBuyOffer.amount
- Stellar: transformTransaction, convert transaction fee to number
- Stellar: transformTransaction, when the memo type is TEXT, convert memo.value to string
- Cardano: fix catalyst reward address backwards compatibility
- trezor-link was replaced with @trezor/transport
- Bitcoin Taproot support.
- Stellar: support for StellarManageBuyOfferOp and StellarPathPaymentStrictSendOp.
- Decred support.
- Stellar: support for StellarPathPaymentStrictReceiveOp operation
- Stellar: support for StellarPathPaymentStrictSendOp operation
- GetFeatures: experimental_features parameter
- 1.10.4 and 2.4.3 FW releases
- @trezor/utxo-lib dependency from monorepo: https://github.com/trezor/trezor-suite/tree/develop/packages/utxo-lib
- major refactor of trezor-link dependency trezor/trezor-link#44
- removed multiple instances of messages.json (protobuf descriptors). connect now holds only one set of descriptors and should keep backwards compatibility with older devices.
- Doge: fees calculation
- Cardano:
getNativeScriptHash
call - Cardano: support for 1854 and 1855 key paths
- Cardano: support for script addresses
- Cardano: support for token minting and burning
- Cardano: support for multi-sig transactions using native scripts
- Ethereum:ethereumSignTransaction eip1559 support for T1
- Updated dependencies.
- Fixed missing
hex
field in SignMessage and VerifyMessage types. - Stellar: ensure type correctness; stricter types.
- Deps: general update of dependencies
- 1.10.3 and 2.4.2 FW releases
ethereumSignTransaction
eip1559 support (Trezor T only)- Warning about missing
chainId
param inethereumSignTransaction
. Will be required in the future. - Firmware releases from
@trezor/connect-common
dependency.
device.unavailableCapabilities
"no-support" condition.rebootToBootloader
refresh device Features after success.
- Cardano: since transaction streaming has been introduced, it isn't possible to return the whole serialized transaction from the
cardanoSignTransaction
call anymore. Instead the transaction hash, transaction witnesses and auxiliary data supplement are returned and the serialized transaction needs to be assembled by the client. - Cardano: a required
signingMode
parameter has been added to thecardanoSignTransaction
call - Cardano: providing auxiliary data as a blob to the
cardanoSignTransaction
call is not supported anymore. Provide only the auxiliary data hash instead. - Removed support for
Lisk
.
- expose whole ButtonRequest object in UI.REQUEST_BUTTON event
- 1.10.2 and 2.4.1 FW releases
- TrezorConnect.dispose method
- restore Ropsten blockchain_link
- add unreadable Device error details
- bootloader T1 getFeatures timeout handling
- uploaded binary modified in the same way as when downloaded by version in FirmwareUpdate
- TrezorConnect.firmwareUpdate binary type
- expose udev installers via TRASNPORT_EVENT
- rename onBeforeUnload to dispose
- update [email protected]
- update protobuf messages
- 1.10.1/2.4.0 firmware release.
- support for intermediary firmware via
@trezor/rollout
dependency. - support for decreasing output in RBF signTransaction (since 1.10.0/2.4.0 FW).
- support for Syscoin (SYS).
- remove coin support via trezor-firmware/common submodule: PIVX, Gincoin (GIN), Pesetacoin (PTC), Zcoin (XZC), Ethereum Social (ETSC), Ethereum Classic Testnet (TETC), EtherCore (ERE), Atheios (ATH), EOS Classic (EOSC), REOSC Ecosystem (REOSC), Trust ETH reOrigin (TEO).
- fix optional types of protobuf
Features
.
- 1.10.0 firmware release.
- Cardano: support for catalyst voting registration.
- Cardano:
cardanoSignTransaction.metadata
param renamed toauxiliaryData
. - Cardano: expose protobuf enums as
CardanoAddressType
,CardanoCertificateType
andCardanoPoolRelayType
, deprecateconstants/cardano
export.
- 2.3.6 firmware release.
- Cardano: support for chunked transaction serialization. (available since FW 2.3.7+)
auto_lock_delay_ms
param to theApplySettings
method.safety_checks
field to theApplySettings
interface which lets you set thesafety_checks
Trezor feature.
signTransaction
parsing original transaction (RBF) with OP_RETURN output.- Incorrect type of the
safety_checks
Trezor feature. - Incorrect typescript type of the
binary
field of thefirmwareUpdate
's params'.
- blockchain-link workers memory leak
- resolve cycled dependencies
- log messages limit
AccountUtxo.required
optional field used incomposeTransaction
method
- AccountTransaction object:
empty
,lockTime
,amount
,totalSpent
,ethereumSpecific
(via @trezor/blockchain-link 1.0.16 and 1.0.17) - invalid protobuf messages used for unacquired devices (missing Features.capabilities)
- 2.3.5/1.9.4 firmware release.
- protobuf types (Features, TxOutput)
signTransaction
missing input amount fallback.cardanoSignTransaction
parameters validation.DOGE
big amount serialization (via @trezor/utxo-lib)
- New protobuf messages with types generated automatically from json file.
- New bitcoin
SignTx
process. cardanoSignTransaction
: stake pool registration, tx without outputs, multi asset support.- intermediary firmware update.
composeTransaction
using P2PKH fee calculation.- BroadcastChannel fallback.
- preferred backend connection.
- AccountTransaction.details (via blockchain-link).
- composeTransaction RBF support (baseFee parameter).
dustLimit
field inblockchainEstimateFee
response.
- DOGE fees (via hd-wallet).
- WebUsb reset method (via trezor-link).
- ui promise race conditions
- Trezor Bridge 2.0.30 optional update.
- wallet links are now pointing to
suite.trezor.io
. - add missing types to
features.backup_type
.
- workaround for bootloader T1 error message.
- trezor onion address to allowed list.
- 2.3.4 fw release.
TrezorConnect.cancel
method called during Pin/Passphrase/Word requests.TrezorConnect.cardanoGetAddress
added missing validation forprotocolMagic
param.- Device
Features.unlocked
translated from legacy fieldpin_cached
.
- Removed timestamp from iframe URL.
- Updated dependencies.
- Added 1.9.3/2.3.3 firmware releases.
- Updated coins.json and protobuf messages.
- Exclude
tXRP
from backend verification (There is no rippled setting that defines which network it uses neither mainnet or testnet, see: https://xrpl.org/parallel-networks.html). - Initial
GetFeatures
message called on bootloader below 1.4.0. - Cardano double passphrase prompt.
- Validation of
FeeLevel.feePerUnit
loaded from the backend (blockchainEstimateFee
method). showOnTrezor
parameter forethereumGetPublicKey
.
showOnTrezor
parameter forgetPublicKey
method.
- Public
getCoinInfo
method. - iframe errors (timeout/blocked) displayed in popup.
interactionTimeout
moved to a lower block in code.composeTransaction
filtermax = -1
field from the result.- Skip device state verification on device management methods.
- Using
blockchainSetCustomBackend
method with an empty array of URLs will disable custom backends (reset to default). - Blockbook will verify that it is connecting to the right coin backend or it will throw an error.
- Don't try to validate multisig output scripts (not implemented yet).
- Default value of
interactionTimeout
has been increased from 2 minutes to 5 minutes.
- Allow unhardenended path (compatibility for Casa)
- zcash: don't send
version_group_id
for tx version lower than 3
- Cardano Shelley Update #638 #639
- Updated dependencies
composeTransaction
- remove unnecessary condition when usingsend-max
outputs
interactionTimeout
property to the initial settings. This will timeout users who stay inactive for a specified amount of time (in seconds).
ButtonRequest_PinEntry
legacyXpub
field in response ofgetAccountInfo
(BTC-like coins) used inmetadata
(labeling)n
field ofAccountTransaction:TransactionTarget
(output index) used inmetadata
branch_id
in signTxTXMETA
(ZCash)
- Improved tests (trezor-user-env)
composeTransaction
missing zcash specific fields (in popup mode)firmwareUpdate
default download url (data.trezor.io)
- Updated dependencies
- Typed errors
composeTransaction
sequence flag- Zcash
extra_data
field
- Disconnect device during action timeout penalty (to allow u2f login)
- Refactor Bitcoin-like signing
estimateFee
fee levels forDGB
unavailableCapabilities
reload condition
webextension
example
composeTransaction
returns zcash inputs with amount- update
trezor-common
(LTC
minfee_kb
, removedCPC
andZEN
)
@trezor/blockchain-link
recv transaction targets- add missing
type
field toRequestPin
- bech32 xpub format in fw < 1.7.2 & 2.0.10
- workaround for pending unread message (trezor/trezord-go#154)
- blockchainSubscribe optional params
- flowtype fix
- Support for FW 1.9.0 and 2.3.0 (passphrase redesign)
- Typescript types
hex
parameter tosignMessage
andverifyMessage
methods- Blockchain methods for fiat rates:
TrezorConnect.blockchainGetAccountBalanceHistory
TrezorConnect.blockchainGetCurrentFiatRates
TrezorConnect.blockchainGetFiatRatesForTimestamps
TrezorConnect.blockchainSubscribeFiatRates
TrezorConnect.blockchainUnsubscribeFiatRates
TrezorConnect.blockchainSetCustomBackend
methodTrezorConnect.cancel
is now trying to send (post) 'Cancel' message to acquired device (not working with TrezorBridge < 2.0.29)- Implement @trezor/rollout module trezor#295
- General cleanup in flowtype declarations
- disableWebUsb method
- trezor-link protobuf messages overrides
- Fixed race condition in nodejs trezor#504
getAccountInfo
Bech32 accounts shouldn't be default #547
signtxVerify
P2WSH output #541
getAddress
for multisig addresses #509bundle
params spread #514- promise resolved multiple times #513
- functions used as classes #512
- Peercoin support
- ZCash Blossom fork (updated
branch_id
)
- React native transport
TRANSPORT_EVENT
"bridge" field send only in browser env. Whole logic moved from Core/DataManager to iframe
- Jest unit tests
- Browser validation logic moved from Core to popup, not restricted anymore
- popupMessagePort assignment for browsers without BroadcastChannel support
- multiple eslint/flow fixes
- Update outdated and remove unused
node_modules
dependencies
getAccountInfo
bump @trezor/blockchain-link version with fixed ripple auto reconnection and ripple-lib issue XRPLF/xrpl.js#1066
tezosSignTransaction
Babylon fork update, exclude firmware lower than 2.1.8
stellarSignTransaction
plugin - a tool for transforming StellarSDK.Transaction object into TrezorConnect.StellarTransactionstellarSignTransaction
missing tests
stellarSignTransaction
parameters types (number > string, add required and optional params)blockchainEstimateFee
method (smart fees)cardanoSingTransaction
amount type to stringliskSingTransaction
amount type to stringrippleSingTransaction
amount type to string
firmwareUpdate
method now emitsButtonRequest_FirmwareUpdate
event andui-firmware-progress
eventblockchainGetTransactions
andblockchainEstimateFee
methodscomposeTransaction
returns precomposed transaction for account
- Unnecessary error wrapper (core.js)
- Standalone
firmwareErase
andfirmwareUpload
methods.
disconnect
-method response
race conditiongetAccountInfo
runtime error when using descriptor without path- Firmware releases channel (beta-wallet)
- Unobtanium support
pendingTransport
race condition using lazyLoading and multiple devices connected- simplified
Core
error rejection BNB
firmware range
- coins.json
- Binance Chain (BNB) support
TrezorConnect.cancel
race condition between device release and returned response
- protobuf messages
- firmware releases
Device.Features.features
field
CoinInfo.blockchainLink
field generated fromcoins.json:blockbook
for BTC-like and ETH-like
- supported coins
- protobuf messages
TrezorConnect.disableWebUSB
method
- renamed EOS actions parameters 'buyram': quantity > quant, 'voteproducer': data.account > data.voter
- Changed communication process between host, iframe and popup. BroadcastChannel is used as default, postMessage as fallback
- Completely rewritten backend layer. Old way using hd-wallet and bitcore/blockbook-api-v1 is dropped in favour of
@trezor/blockchain-link
BigInteger
support for Bitcoin transactions using@trezor/utxo-lib
andhd-wallet@bigint
TrezorConnect.rippleGetAccountInfo
andTrezorConnect.ethereumGetAccountInfo
merged toTrezorConnect.getAccountInfo
TrezorConnect.getAccountInfo
parameters
- nodejs support
lazyLoad
parameter toTrezorConnect.init
- bech32 accounts support
- Webextension usb permissions iframe dynamically included into html
- correct
script_type
toTransactionInput
andTransactionOutput
of Bitcoin-like TxRequest protobuf message - signed transaction validation for Bitcoin
signTransaction
andcomposeTransaction
methods - shamir recovery
- Cloudfront cache invalidation
- Url encoding in
TrezorConnect.manifest
- EOS methods
TrezorConnect.eosGetPublicKey
andTrezorConnect.eosSignTransaction
TrezorConnect.firmwareUpdate
(management method)- New firmware releases
- New bridge releases
- Dependencies security vulnerabilities
- Minor fixes in flowtype and tests
- Management methods
applyFlags
,applySettings
,backupDevice
,changePin
,firmwareErase
,firmwareUpload
,recoveryDevice
- Missing params to
TrezorConnect.signTransaction
method [version
,expiry
,overwintered
,versionGroupId
,branchId
,refTxs
] - Possibility to use
TrezorConnect.signTransaction
without build-in backend (usingrefTxs
field) TrezorConnect.getSettings
method
- Dash and Zcash special transactions
EthereumGetAddress
address validation- Flowtype for
CardanoInput
TrezorConnect.manifest
method- DebugLink (emulator) support:
TrezorConnect.debugLinkDecision
andTrezorConnect.debugLinkGetState
methods TrezorConnect.ethereumGetPublicKey
method (with fallback for older firmware)TrezorConnect.loadDevice
methodCapricoin
support (with required changes inhd-wallet
andbitcoinjs-lib-zcash
libs)firmwareRange
to every method (validation if device FW is in range:min_required_firmware
-max_compatible_firmware
declared in config.json)- Conditional protobuf messages (fallback for older FW)
- "device not backed up" confirmation
blockchain-link
dependencyTrezorConnect.rippleGetAccountInfo
methodTrezorConnect.blockchainGetFee
methodTrezorConnect.blockchainUnsubscribe
methodBlockchainEvent
(connect/error/block/notification)
- Upgrade npm modules (babel@7)
network
forprotocol_magic
inTrezorConnect.cardanoSignTransaction
method
- ComposeTransaction: fees/legacy detection
- test with DebugLink device
- removed "window" references
- Delay for popup window
- Temporary disable webusb (chrome72 issue)
- Added
UI.ADDRESS_VALIDATION
event
getAddress
,cardanoGetAddress
,ethereumGetAddress
,liskGetAddress
,nemGetAddress
,rippleGetAddress
,stellarGetAddress
,tezosGetAddress
methods (allow to handleUI.ADDRESS_VALIDATION
event)- refactor
ButtonRequest_Address
view in popup: display address and copy to clipboard button - extend
getAccountInfo
response (utxo, used addresses, unused addresses) - Moved flowtype declarations from ./src/flowtype to ./src/js/types
- Refactor CoinInfo to 3 types: BitcoinNetworkInfo, EthereumNetworkInfo and MiscNetworkInfo
stellarSignTransaction
with multiple operations
TrezorConnect.tezosGetAddress
methodTrezorConnect.tezosGetPublicKey
methodTrezorConnect.tezosSignTransaction
methodTrezorConnect.dispose
methodTrezorConnect.cancel
method- new firmware releases
- new bridge releases
- Whitelist
trusted
mode for instances hosted locally - Send correct
script_type
inGetPublicKey
message
- Stellar signTransaction amount validation
- Stellar signer field validation ("StellarSetOptionsOp" operation in "stellarSignTransaction" method)
- Firmware (model) not supported popup screen
TrezorConnect.wipeDevice
methodTrezorConnect.resetDevice
method
- Calling method on device with seedless setup is disabled by default
- Post message to window.parent instead of window.top
- Authenticating device using BTC testnet path instead of dummy m/1/0/0
WRONG_PREVIOUS_SESSION
race condition when switching between tabs and acquiring device- removed unnecessary console.logs and build scripts
- Docker build for npm
- Renamed directory "dist" to "build"
TrezorConnect.pushTransaction
method with ethereum blockbook supportTrezorConnect.ethereumGetAccountInfo
methodTrezorConnect.blockchainSubscribe
methodTrezorConnect.blockchainDisconnect
methodBLOCKCHAIN
events./data/bridge/releases.json
- Bridge release info in TRANSPORT.START and TRANSPORT.ERROR event
- TRANSPORT.ERROR event when computer goes to sleep
- unexpectedDeviceMode immediately rejects call in trusted mode
- coins.json merged as one file (removed data/ethereumNetworks.json)
- License to T-RSL
- Unicode character in regexp, (trezor#229)
TrezorConnect.ethereumSignMessage
andTrezorConnect.ethereumVerifyMessage
methods with "hex" parameter- flowtype for
TrezorConnect.cardanoGetPublicKey
inTrezorConnect.cardanoSignTransaction
methods
TrezorConnect.cardanoGetPublicKey
method- Ability to sign hexed ethereum message
network
parameter toTrezorConnect.cardanoSignTransaction
method
- TRANSPORT.ERROR event when computer goes to sleep
- finding backend by name instead of urls
- proper FW version for Lisk and Stellar
TrezorConnect.cardanoSignMessage
methodTrezorConnect.cardanoVerifyMessage
method
- Support for Cardano
- Support for Ripple
- Support for Lisk
- Exception for not supported firmware when value for "trezor1" or "trezor2" inside coins.json is not set
- Disable customMessage method for devices with official firmware
- New field in
TrezorConnect.signEthereumTransaction
forWanchain
- Separate "getPublicKey" and "getAddress" methods for all coins
- Device state verification while using multiple instances with the same passphrase
- ConnectSettings sensitive settings verification in DataManager
- removed package-lock.json from repository
- 'send-max' and 'opreturn' output types to
TrezorConnect.composeTransaction
- Handle popup close event while waiting for iframe handshake
- Removed ledgerVersion (
protocol_version
) from StellarSignTransaction method - One time permissions stored in session in application variable
TrezorConnect.ethereumSignTransaction
recompute "v" value if Trezor returns value in range [0,1]- Webextensions: Handling if popup is called from "normal" window or extension popup
- ConnectSetting default domain
- flowtype for TrezorConnect methods (bundled methods return bundled results)
- renderWebUSBButton method
- "babel-polyfill" from npm and export unminified script https://connect.trezor.io/5/trezor-connect.js
- https://connect.trezor.io/5/trezor-connect.min.js to export with bundled "babel-polyfill"
- Web extensions: open popup tab next to currently used tab
- Support for WebExtensions (Chrome/Firefox)
- Host icon for whitelisted domains
- Passphrase input type (revert to password type)
- Popup and iframe timeout handling
- Handling not initialized iframe
- Iframe ad-blocker handling
- Popup views
- Popup as new tab
- Support for Dogecoin and Vertcoin
- Handling not initialized device
- SignTransaction: amount as string
- Handle origin of file://
- Default url in connect
- Documentation
- filter UI events for popup and trusted apps
TrezorConnect.signMessage
andTrezorConnect.verifyMessage
signature to base64 format
- constants prefix from
__
to-
- removed popup delay if lazy loading
- validation of device state if method is using emptyPassphrase
- retyped Device, distinguished by "type" field
- eslint fixes
- npm package dependencies
- Unsupported browser (IE)
TrezorConnect.pushTransaction
method- bundle parameters in
TrezorConnect.cipherKeyValue
method - bundle parameters in
TrezorConnect.getPublicKey
method - bundle parameters in
TrezorConnect.getAddress
method - bundle parameters in
TrezorConnect.ethereumGetAddress
method - bundle parameters in
TrezorConnect.nemGetAddress
method - bundle parameters in
TrezorConnect.stellarGetAddress
method - type conversion from stellar-sdk to protobuf in
TrezorConnect.stellarSignTransaction
method - Popup warning with outdated firmware and outdated bridge
- Tests with emulator
- '@babel/runtime' to package dependency
- Device authentication and popup open delay
- Minor fixes in popup view
- Ethereum methods accepts values with '0x' prefix
- Ethereum methods returns checksummed addresses (with different checksum typ for RSK network)
- Ethereum methods returns values prefixed with '0x'
- Firmware check against CoinInfo.support values
- Outdate firmware warning in popup
TrezorConnect.requestLogin
parameters- Race condition in
UI.REQUEST_CONFIRMATION
popup.html
buttons click
- iframe lazy loading
- Build script for npm module
- Ultimate flow type
- Reorganized files and imports
- Minor fixes in code
TrezorConnect.getAccountInfo
methodTrezorConnect.signTransaction
methodTrezorConnect.composeTransaction
methodTrezorConnect.signMessage
methodTrezorConnect.verifyMessage
methodTrezorConnect.getAddress
methodTrezorConnect.requestLogin
method- cashaddr support for BCH
- documentation
TrezorConnect.customMessage
logic and securityTrezorConnect.stellarSignTransaction
parameters compatible with "js-stellar-base"- flowtype declarations for all methods. Params and responses
- unnecessary settings from ConnectSettings
- unused methods from TrezorConnect
TrezorConnect.stellarSignTransaction
method
TrezorConnect.ethereumSignTransaction
parameters
- type and event fields from RESPONSE
- Library exports
TrezorConnect.nemGetAddress
methodTrezorConnect.nemSignTransaction
methodTrezorConnect.stellarGetAddress
methodTrezorConnect.customMessage
method
- flowtype
- messages from json instead of
config_signed.bin
- popup.html UI/css
- Karma + Jasmine tests
- support for Bridge v1 and chrome extension
From this version trezor-connect is used by Trezor Password Manager