tz1 and kt1 addresses have the same functionality in terms of transactions. However, there is one difference, kt1 accounts have smart contract functionality and tz1 does not. Also, you can use your tz1 account to self-bake but you cannot use your tz1 account to delegate. As for kt1 accounts, you can use this address to delegate but you cannot use your kt1 to ...
There isn't currently a wallet for iOS using the secure enclave. But the tz3 accounts use p-256 encryption and were put in primarily to support iOS, Android, and other devices which are only compatible with p-256. There has been some work toward multisig contracts intended for use with secure enclave based wallets, I would expect we will see something soon.
You can always follow the instructions on Github to build an Electron application from the source code. In that case you want to modify constants.ts to use the alphanet instead of the mainnet. For security reasons this is hard-coded and can not be modified during runtime.
To make life easier you can now also access the alphanet version at https://alphanet....
If the key is generated on their server, you have no way to know.
If the key is generated locally in your browser, you may try to monitor the network to see what the wallet sends to the server. However, it might still find other ways to get the key, for example by waiting a random time before sending it, by encrypting the communication, or just by limiting ...
I am talking from memory of the transition from proto 002 to proto 003 so hopefully I got it right.
If you go on tzscan you will see that there is a counter for addresses
When this counter is not zero it means the address is « alive » which means in practice that it has a non-zero balance and on ...
Look at this file https://gitlab.com/tezos/tezos/blob/master/src/lib_crypto/base58.ml
The relevant section is the Prefix module at the end
module Prefix = struct
(* 32 *)
let block_hash = "\001\052" (* B(51) *)
let operation_hash = "\005\116" (* o(51) *)
let operation_list_hash = "\133\233" (* Lo(52) *)
let operation_list_list_hash = "\029\159\...
Make sure you revealed public key just once and make sure you properly incement counter.
Also, take a look at Netezos, C# Tezos SDK. Here is an example of how to forge, sign and send a transaction:
var key = Key.FromBase58("edskS9DjUKo8ogBBU8LeU...");
var rpc = new TezosRpc("https://rpc.tzkt.io/carthagenet/");
var head = await rpc.Blocks.Head.Hash....
The alphanet is initialized with a set of account similar to the ones present in the mainnet genesis block. The faucet distribute those accounts on demand. This secret proves that you are the real owner of the account. This is used to forge the activation operation.
Assuming your PKH is a tz1* address, we would know 2/3 parts of how this address was derived, the only part missing would be your derivation path.
1 - seed phrase of the ledger device (assumed known via Ledger device ownership)
2 - tz1* = ed25519 signing curve
3 - Derivation Path
As noted on this question and yours, TezBox defaults to 44'/1729'/0'/0'. ...
Hardware wallets like the Ledger Nano are good cold storage solutions.
Offline-wallet creation in an air-gap device is also a good solution.
Kukai wallet offers you the possibility to do offline-signing so your seed is never exposed to the online world when interacting with the network.
To add an originated account to the cli wallet:
tezos-client remember contract <new alias> <kt1...>
Check if the originated account was successfully added to the client:
tezos-client list known contracts
Show balance of the originated account:
tezos-client get balance for <new alias>
In order to transfer from the originated account, ...
Any wallet software you choose to run comes with risks you should be fully aware of in order to properly protect yourself.
Whether its a web, desktop, or mobile app you are running code that someone else wrote and the best way to reduce the risk is to make sure you are using software that is open source and has been verified by the community as coming from ...
TezBox currenty only supports the ed25519 curve, this is because the underlying library (eztz.js) only supports this curve. We are about to release support for the other two curves in eztz.js in the next few weeks, and will likely roll out support to TezBox after that.
The alternate HD paths will be available in the wallet after that, but currently you will ...
when working with the Tezos command line client it's useful know that you can give accounts an alias to make it easier to enter commands:
client add address <new alias> <public key hash to which alias applies>
To create an originated account for a given tz1 alias, you need to be aware that it will burn 0.257 xtz, plus you need to specify a fee ...
This can still be done from the terminal using the normal ./tezos-client transfer <amount> from <src> to <dst> command, with a couple of important caveats:
There is currently a regression in Babylon in that this command expects the value for amount to be in mutez rather than in tez, but only when transferring from a KT1 account. For ...
There are multiple steps to this process, all of which I think you have already done, but I'll walk through them just to highlight how some of it works.
In order to use the Ledger you have to initialise it with either an old seed phrase from before or it generates a new one for you. You should always ensure that you bought a genuine ledger ...
My suggestion would be using tzscan API.
For example checking all activations until you find a match
something like this:
index = 0
loop while true
compare each item
It has a timestamp for each activation
Correct way of doing it with tzscan
There is no need to keep the TZ account "hot" (as in online) while delegating. LPOS allows you to select a delegate and then keep your keys in "cold storage" (as in offline).
The baker however - Coinbase in this case - needs to constantly sign blocks and endorsements and hence needs to keep the keys to their own funds available for signing.
If there has been any transactions to or from any of these wallets they will be on the chain forever.
You can "forget" them on your tezos node using:
tezos-client forget address <name> -f
The -f (force) option will remove the keys from disk (if present).
AirGap has implemented the FA 1.2 standard for a token. This is not yet released to the public and scheduled for a security audit.
Best would be to have a chat with Pascal on the Tezos Slack or on Telegram.
Not supported by the command line client at the moment, but the pytezos library supports it, see Key.generate.
Generates new key
:param passphrase: optional password
:param curve: b'sp' for secp251k1, b'p2' for P256/secp256r1, b'ed' for Ed25519 (default)
:param strength: mnemonic strength, default is 128
:param language: mnemonic language, default is ...
There are two valid EC points that correspond to the same signature, but some blockchains restrict the usage to one of those two EC points to avoid malleability (= it is easy to convert the signature to the other signature value, and thus ...
There is https://tezos.gitlab.io/whitedoc/micheline.html#binary-serialization which mostly tells to run tezos-codec describe alpha.script.expr binary schema for a complete description of the binary encoding.
More details are given here.
Taylor Keefer demonstrated a prototype iOS app on May 6, 2019 in a Medium article "Signing Tezos Transactions with iOS’s Secure Enclave and Face ID". As in the solution described by @cousinit, this prototype uses a "1 of 2 multi signature smart contract" with a second key used in case the access to the key in the secure enclave is not available anymore.
SOLUTION (for TezBox web version)
Not as intuitive as one can imagine. The following has been done on a machine with Fedora OS running a Tezos node.
First as a user create a certificate and a key:
openssl req -x509 -newkey rsa:2048 -nodes -keyout server.key -new -out server.crt -subj /CN=localhost -reqexts SAN -extensions SAN -config <(cat /etc/pki/tls/...
You can see in the commit 1c7d7ce7 that the prefix was previously "TZ1". The case was used to distinguish between the two types of adresses. This commit changed the letters to "limit confusion with tz1". Regarding the choice of the new letters, there is no official explanation as far as I can tell but, according to rumors, it may be a reference the first ...
It is not possible, as the manager of your KT account would be set the your tz address, and there is currently no way to change this. You should continue receiving rewards for your current address until the new address kicks in, so you shouldn't lose any rewards. I advise that you email your delegation service first though, just in case they have a policy in ...
Alex from TzStats. We're working on supporting indexing and display of FA1.2 right now. I'm happy to collaborate to get this feature working ASAP. Please get in touch on our Discord server https://discord.gg/D5e98Hw
As base layer for decoding FA1.2 and other contract data we'll be using our bigmap index and storage decode features described here.