Termos Caminho da transferência O que não podemos Perguntas
Mitilena Mitilena Wallet Cold crypto wallet
ONLINE · 22,000+ COINS Criar carteiraCriar
Como funciona · o caminho da transferência em 7 passos

Não podemos gastar o seu dinheiro. Agora mostramos exatamente onde isso deixa de ser possível.

Uma transferência na Mitilena passa por sete passos. A chave do seu dinheiro é necessária exatamente num deles — e acontece no seu dispositivo. Ao servidor só chega o resultado já assinado, que não se pode reescrever.

Assinatura de transação no dispositivo O servidor só vê a assinatura Carteira não custodial — a chave fica consigo
Sete passos, uma assinatura
01Escolhe o endereço de origemnada secreto02Indica o destinatáriodados públicos03Calculamos a taxaa chave não é necessária04Montamos o rascunhoainda não é dinheiro05Assinatura no seu dispositivoúnico passo com a chave06Para o servidor vai o resultadoenvelope assinado07Registo no históricosem nome nem IP
O seu dispositivo
montámos e assinámos
a chave intervém só aqui
transação assinada
Servidor Mitilena
enviou para a rede, não vê a chave
o hash volta para si
Blockchain
registou · vê endereços, não pessoas
Três palavras sem as quais o resto não se percebe

Endereço

É como um número de conta. Pode mostrá-lo a qualquer pessoa — aí se recebem fundos. Não diz quem é: na blockchain não há campo «nome».

Chave privada

É a sua assinatura. Não a palavra-passe de um painel, mas a assinatura: quem tem a chave dispõe das moedas no endereço. Onde se guarda a chave privada — só consigo; a nós não nos é mostrada e não a temos.

Transação

É uma ordem: «do endereço A para o B transferir tanto». Por si só não vale nada até ter assinatura. A rede só aceita o que está assinado.

Caminho da transferência

Como a carteira envia criptomoedas: sete passos — e exatamente um com a chave

Cada passo — primeiro em palavras simples, depois uma linha «por baixo do capô» com a técnica. O principiante salta-a; o técnico só lê essa. Tudo confrontado com o código da carteira e do backend — sem inventar.

Passo 01

Escolhe a partir de que endereço paga

Abre a lista de carteiras e escolhe aquela a partir da qual sairão os fundos. Nesse momento não acontece nada secreto: a app só toma a cadeia do endereço.

Onde estão os seus endereços. Sem registo — só no seu dispositivo, no armazenamento local do browser ou da app, junto a saldos e definições. Nenhum endereço nos chega: nem sequer sabemos que existe. Se criou uma conta (e-mail, Google ou Apple) — para o servidor só vai o endereço, para a lista coincidir no telefone e no computador. A chave privada não entra na conta: no código simplesmente não há lugar para ela.

Por baixo do capôLista de carteiras - JSON no localStorage sob a chave walletsWithCryptoIds. Ao registar-se o endereço é adicionado com o socket addSpecificWalletToUser e liga-se ao hash do utilizador. No objeto que vai para o servidor não há campo para a chave privada.
Campo «De» — cadeia do endereço e saldo da blockchain. A carteira não precisa de mais nada neste passo.
Sem registo
Os endereços só no seu dispositivo. Não sabemos que existe.
Com conta
Para o servidor só vai o endereço. Não há campo para a chave.
Passo 02

Indica a quem envia

O endereço do destinatário pode colar-se da área de transferência, digitalizar um QR ou tirar da agenda. A agenda constrói-se com as suas próprias transferências: a app envia a lista dos seus endereços nessa rede e recebe a quem já pagou a partir deles. Não recolhemos «contactos» nem pedimos acesso à agenda do telefone.

Nomes e estrelas — só consigo. A etiqueta «Mãe» ou «Fornecedor» e os endereços fixados vivem no armazenamento local do dispositivo — no servidor não estão. Enquanto escreve, a carteira valida o endereço segundo as regras da rede: comprimento, formato, checksum. Um erro de escrita não passa do campo de entrada.

Por baixo do capôO socket getAddressBook consulta a tabela txs com a condição «remetente - um dos seus endereços» e devolve até três transferências recentes por destinatário. Etiquetas e favoritos - chaves mitilenaAddrLabels_v1 e mitilenaAddrFavs_v1 no localStorage.
Placa «endereço ativo»: saldo e atividade do destinatário. São dados públicos — qualquer pessoa os pode ver em qualquer endereço.
O que a placa mostra
Saldo da moeda que envia; para um token — também a moeda «nativa» da rede (senão o destinatário não tem com que pagar a taxa); e quantas transações o endereço já viu.
Passo 03

Calculamos a taxa — e para isso a chave não é necessária

A taxa de rede em criptomoedas não é fixa: paga-se à rede por incluir a transferência num bloco. Para mostrar um número honesto é preciso perguntar à rede. Para fora vão o seu endereço, o do destinatário e o montante. Nem chave nem assinatura — nada com que se possa dispor do dinheiro.

Porque é seguro. É leitura, não uma ação: perguntar «quanto custa agora a transferência» é como olhar o painel de voos. Nenhuma leitura debita moedas: o débito só ocorre com uma assinatura.

Três velocidades. Escolhe: mais lento e barato ou mais rápido e caro. Não é a nossa margem — a taxa inteira vai para mineiros e validadores da rede. A Mitilena não cobra nada pela transferência.

Por baixo do capôNíveis base de taxa - socket getFee, e o seu endereço não é enviado nesse pedido, só o id da rede. Dados de endereço - chamadas à parte: getBtcUnspent e vizinhas, getTronResources, getXrpAccountStatus, getTonFee. A tarifa EVM toma-se do nó com eth_gasPrice.
Slider de taxa: 1-4 sat/vB com tamanho 374 vBytes. Todos esses números a rede responde sem chave.
O que perguntamos exatamente — por redes
BTC, LTC, DOGE, BCH, ZEC - lista dos seus «pedaços» não gastos: do seu número dependem o tamanho da transa��ão e a taxa.
Redes EVM: ETH, BNB, Polygon, Arbitrum, Base, AVAX, ETC - preço do gas da rede e número de ordem do pagamento.
Tron - recursos grátis do endereço, bandwidth e energy: se chegam - a transferência fica mais barata.
XRP - se existe a conta do destinatário: uma não ativada exige reserva.
TON y Solana - estimativa de taxa e se o destinatário tem «bolso» para esse token.
Passo 04

Montamos o rascunho da transação

A carteira monta a ordem completa: de onde, para onde, quanto, que taxa e o número de ordem. Cada endereço tem um contador de pagamentos de saída — nonce. Serve para que a mesma transação não passe duas vezes e os pagamentos sigam em ordem. Perguntamos à rede o valor atual, incluindo transferências ainda na fila.

O rascunho ainda não é dinheiro. Neste passo só existe o texto da ordem. Sem assinatura não vale nada: a rede não o aceita, como um banco não aceita um pagamento sem assinatura. Pode perder-se, mostrar-se, deitar-se fora — o saldo não muda.

Por baixo do capônonce chega pelo socket getNonce; em redes EVM é getTransactionCount(endereço, 'pending'). Em redes UTXO não há número - o seu papel cumprem-no as saídas não gastadas. Tron: extendExpiration a 1200 segundos.
Ecrã antes de assinar: montante, de, para. Ainda é só o texto da ordem — a rede não o aceitará.
Nota Tron
O rascunho é montado pelo nó da rede e vive uns minutos — pouco para tirar o cartão e introduzir o PIN. Alargamos o prazo para 20 minutos; isso não nos dá direitos extra.
Nota Solana
Antes de assinar verificamos que o endereço é uma carteira normal, não uma conta de smart contract: costumam chegar de seed phrases «oferecidas» — o saldo vê-se, mas não se pode retirar.
Passo 05
único passo com a chave

Assinatura de transação. Acontece no seu dispositivo

O momento para o qual se montou tudo. A carteira toma o rascunho e a sua chave e calcula a assinatura — aqui mesmo, na app ou no separador do browser. A chave pode chegar por quatro vias, e as quatro terminam no seu dispositivo:

1Introduz à mão — a partir de um papel, um PDF ou um gestor de palavras-passe.
2Digitaliza um QR — câmara, sem rede.
3Aproxima um cartão NFC ou autocolante — a chave lê-se do suporte, desencripta-se com a sua palavra-passe e vive em memória só até ao fim da assinatura.
4Introduz o PIN — se antes permitiu guardar a chave no dispositivo.

Verificação «é essa a chave?». Antes de enviar, a carteira deriva o endereço da chave introduzida e compara-o com o do remetente. Se não coincidir — a transferência não sai e vê «Wrong private key». A assinatura é matemática sobre o texto da transação e a chave: da assinatura não se pode recuperar a chave, e vale exatamente para uma transação. Mude o montante ou o destinatário ainda que seja um carácter — a assinatura deixa de bater certo.

Sobre guardar sob PIN — com honestidade. A chave encripta-se no seu dispositivo e em forma encriptada vive no armazenamento local. O PIN tem de 6 a 12 caracteres, admitem-se emoji. Esse PIN não o conhecemos nem podemos restaurá-lo: não está em parte nenhuma salvo na sua cabeça.

Por baixo do capôDo PIN deriva-se a chave de encriptação com PBKDF2-SHA256, 100 000 iterações, salt aleatório por registo; encriptação AES-256-CBC, guarda-se como salt:iv:cifra no localStorage. O gate «a chave corresponde ao remetente» - SignOnline.vue, sendTrans.
Nota Monero
A transação monta-se e assina-se no browser com um módulo cripto local. O servidor entrega saídas públicas alheias para o anel de assinatura e verifica que as suas não estão gastas. Para o saldo de Monero é preciso a chave de visualização — só lê; não se pode gastar com ela.
Se assina offline
A Mitilena Air assina num dispositivo sem internet: a transação chega lá por QR, som ou NFC e volta já assinada. A chave não aparece nem um segundo no dispositivo que sai para a rede.
Três formas de assinar: neste dispositivo, com cartão NFC ou offline com Mitilena Air. Em nenhuma a chave vai para lado nenhum.
Ecrã de assinatura: chave privada ou 12 palavras, QR ou cartão. O campo de entrada vive no seu dispositivo.
Guardado sob PIN: encriptado e só neste browser.
Passo 06

O que o servidor da carteira cripto vê: só o resultado da assinatura

A assinatura está pronta. Agora a carteira envia-nos a transação assinada — e mais nada. É uma só cadeia que já leva: de quem, para quem, quanto, taxa, número de ordem e a própria assinatura. Não se pode mudar nada — a assinatura partir-se-ia e a rede rejeitá-la-ia. Não podemos reescrever o montante, substituir o destinatário nem enviá-la uma segunda vez.

O que o servidor faz. Exactamente uma coisa: entrega o envelope à blockchain via um nó da rede e devolve-lhe o hash — o número com que a transferência se encontra em qualquer explorador. Como um carteiro que não sabe abrir cartas. A transação assinada não está atada à Mitilena: aceita-a qualquer nó dessa rede. Se amanhã o nosso servidor desaparecer, as moedas continuam a ser suas — a chave é sua.

Por baixo do capôO socket pushSignedTxToBlockchain recebe o campo txHex - a transação assinada - e chama o método de envio da rede correspondente. Não há chave privada nesse pedido: não existe campo para ela em nenhum formato.
O botão «Enviar transação» manda para o servidor o envelope já assinado. Não se pode substituir nada dentro.
Passo 07

Histórico de transferências — e o que fica registado

Após um envio correto a carteira guarda um registo curto para funcionarem o histórico e a agenda. No registo: rede, moeda, montante, endereço de origem, endereço de destino, hash, taxa de câmbio no envio e data. Mais o código do link de seguimento que pode passar ao destinatário para ver o estado.

O que não há no registo: o seu nome, e-mail, IP nem identificador de utilizador. A linha não se liga a uma pessoa, mas a endereços que já são públicos na blockchain. Por isso a chamamos anonimizada. Com assinatura offline via Mitilena Air a parte online não guarda nada da transferência: só vê o envelope pronto.

Por baixo do capôO socket saveAnonymTxDataForTrackingLinkPurposes guarda a linha na tabela txs. Não há colunas de utilizador. A agenda do passo 2 lê essa mesma tabela pelos seus endereços - por isso conhece os seus destinatários sem o conhecer a si.
tabela txs · uma linhasem coluna «utilizador»
rede e moeda
montante
endereço de origem
endereço de destino
hash da transação
taxa de câmbio no envio
data
código do link de seguimento
Não há
o seu nome
e-mail
endereço IP
identificador de utilizador
O que fisicamente não podemos fazer

Não «prometemos não o fazer»: não podemos — porque não há com quê

Gastar o seu dinheiro

Pode a carteira roubar cripto? Não: para debitar é preciso uma assinatura, para a assinatura — a chave. Não temos a chave; não se transmite em nenhum passo.

Congelar ou cancelar a transferência

A transação assinada vai para a rede e vive segundo as suas regras. Não há botão «reverter» nem em nós nem em mais ninguém.

Substituir o destinatário

O endereço vai dentro do envelope assinado. Qualquer alteração parte a assinatura.

Restaurar o seu PIN ou chave

Não estão nos nossos servidores. É incómodo, mas essa é precisamente a garantia.

Mostrar o seu histórico a um estranho como «seu»

Na base está ligada a endereços, não a uma identidade.

E o que também não prometemos

Também com honestidade: onde a carteira não ajuda

A blockchain é pública

Os seus endereços, montantes e horários de transferência são visíveis para todos e para sempre. A privacidade não a dá a carteira, mas o cuidado com os endereços — ou redes como Monero.

Perdeu a chave — perdeu o acesso

Ninguém, nós incluídos, a devolverá. Guarde-a em dois sítios de imediato, de preferência offline.

Um dispositivo sob controlo de um atacante é o dispositivo dele

A assinatura ocorre onde a lança. Um vírus no telefone é mais perigoso do que qualquer falha de servidor; para somas grandes há cartão NFC e assinatura offline.

Monero exige uma chave de visualização

É preciso para mostrar o saldo. Só lê; não se pode gastar com ela — mas convém sabê-lo de antemão.

Perguntas

O que perguntam ao chegar a este ponto

É seguro enviar cripto através do servidor se tudo se faz no dispositivo?

Sim, se compreender o papel do servidor: perguntar à rede a taxa e o número de ordem, obter taxas de câmbio e reenviar o envelope pronto. Tudo são operações públicas; a chave não é necessária. Parte dos nós da rede mantemo-los nós para não depender de serviços alheios.

Vêem o meu saldo?

O saldo de qualquer endereço vê-o qualquer pessoa — é um registo aberto na blockchain. A pergunta é se o endereço está ligado a si. Sem registo nem sequer conhecemos a sua lista de endereços: está no seu dispositivo.

E se mudarem o endereço do destinatário sem eu ver?

O endereço fica dentro da assinatura. Se se mudar depois de assinar, a assinatura parte-se e a rede rejeita. Antes de assinar o endereço está no seu ecrã: compare os últimos caracteres — um hábito para a vida em cripto.

Porque é que a taxa muda o tempo todo?

É um leilão por lugar no bloco. Quando a rede está carregada, o lugar custa mais. Mostramos o que a rede responde nesse momento e deixamos escolher a velocidade.

A transferência está pendente sem confirmação. O que fazer?

Já está na rede — tem hash e vê-se no explorador. Em redes EVM uma transferência presa pode substituir-se: enviar uma nova com o mesmo número de ordem e maior taxa.

O que é nonce em palavras simples?

O número de ordem do pagamento a partir do seu endereço. A primeira transferência é zero, a segunda um, e assim por diante. Impede executar o mesmo pagamento duas vezes.

Em que difere de uma exchange?

Numa exchange as moedas estão na conta da empresa e é uma linha na base dela: podem congelar, pedir documentos, limitar o levantamento. Aqui as moedas estão no seu endereço na blockchain e a chave é sua.

E se perder o telefone?

As moedas continuam na blockchain. Instala a carteira num dispositivo novo, introduz a chave guardada — tudo continua lá. Sem a chave ninguém pode ajudar.

Confirme por si: caminho de sete passos, a chave só é sua

30 segundos, sem registo nem passaporte · support@mitilena.com · @mitilena_wallet
Criar carteira grátis