Série [4/4] - Finalmente! O nascimento do nosso endereço Bitcoin!
Вставка
- Опубліковано 21 кві 2018
- A jornada de nascimento do nosso endereço Bitcoin chega ao fim.
Parabéns para os bravos guerreiros que conseguiram assistir tudo, mas haverá continuação...
Canal do Miguel: / @miguelmedeiros
Nota 1: Não ficou claro no vídeo, mas a tal "versão" significa tanto o tipo de endereço quanto a rede em que será utilizado. O '00' significa P2PKH na rede principal, traduzindo: "Pay to Public Key Hash". Tem este nome pois o endereço no final das contas é um hash da sua chave pública, e não a chave pública em si. Existem outros tipos de endereços, como o P2SH, que significa: "pay to script hash", e geralmente são endereços começando com 3. Este script é o tal "contrato inteligente" do bitcoin e que não abordarei aqui, e é o mecanismo que permite endereços multi assinatura e muitas outras coisas.
Trocando em miúdos: quando alguém está fazendo um pagamento para este endereço, a pessoa está fazendo um pagamento para a pessoa que comprovar ter a chave privada que gera a chave pública que gera o hash que está dentro do endereço. Ufa!
Nota 2: Os novos endereços Segwit são no padrão bech32, e aí a forma de gerar o endereço é outra.
-Diagrama: en.bitcoin.it/wiki/Technical_...
Para criar estes scripts me baseei nesta página, e altamente recomendo a leitura: procbits.com/2013/08/27/genera...
- Lista de prefixos: en.bitcoin.it/wiki/List_of_ad...
Link para o Forum: tribocrypto.com
Meus cursos no Diolinux EAD:
- Curso de Terminal: ead.diolinux.com.br/ver/curso...
- Curso de Shell Script: ead.diolinux.com.br/ver/curso... - Наука та технологія
Boa Tiago! Ótimo vídeo!!!
Pode contar comigo para continuarmos nessa jornada de descomplicar o protocolo do Bitcoin pra galera!
Valeu Miguel!! Acho que o pessoal vai gostar da continuação que você sugeriu :)
Não conta o que é ainda! Vamos deixar um suspense pra galera! :)
QUE AULA MARAVILHOSA!
Top a série, parabéns 👏
Endereço criado com sucesso! Vlw pela aula!
check
O Video tem bastante tempo, mas tem uma boa didatica, hoje algum modulos deste ja estao desatualizado, mas memso assim conseguir adaptar com o seus ensinamentos, muito bom.
Pois é. Infelizmente as libs são atualizadas e acabam quebrando. Precisaria usar exatamente as mesmas versões do nodejs e libs.
Valeu Tiago, ficou muito bom o seu trabalho!
Muito obrigado!!
Valeu Tiago!!! Sobe os scripts pro Gihub pra quem quiser clonar...
Valeu cara! Vou providenciar aqui.
Caralho QUE FODA :)
Valeu cara!! :)
Loucura!
Excelentes vídeos e explicação! Sou bem novato em programação, mesmo assim deu pra entender. Sabe se daria pra gerar as chaves utilizando Python? Após seus vídeos vou procurar quais bibliotecas seriam adequadas.
Obrigado
Muito obrigado. É possível gerar em qualquer linguagem de programação. Existem bibliotecas prontas em python sim, mas eu pessoalmente nunca usei.
Por isso é impossível encontrar a chave privada de um adress , passa por tanta coisa ,acho q não tenho nenhum computador que consegue reverter esse processo.
Ou tem?
Tiago, sabe o motivo pelo qual o "pre-endereco" tem que passar 2 vezes pela sha-256 pra se poder "pegar" o checksum do endereco?
Ótimo video, vlw!
Boa pergunta. O Satoshi fez muitas coisas que ninguém sabe explicar direito. Em vários lugares ele usa o "hash do hash" e se especula que isso seria uma forma de prevenção caso alguém conseguisse quebrar o sha256. Mas a resposta definitiva eu realmente vou ficar te devendo.
Como do endereço você chega na chave pública? e como uma chave pública consegue ter vários endereços?
Em endereços P2PKH você não consegue obter a chave pública. Pois dentro do endereço é salvo somente o hash da chave pública, e o hash é um processo de mão única, ou seja, irreversível.
O que acontece é que quando você for tentar gastar o saldo que foi pago para este hash, você por ser detentor da chave privada, logo consegue deduzir a chave pública e consegue provar para o blockchain que ela foi a chave que gerou o hash para o qual o pagamento foi feito. É um processo não muito intuitivo, mas garante que a chave pública em si só seja revelada na hora em que o saldo tentar ser gasto novamente.
Sobre ter vários endereços para uma mesma chave pública: o fato de mudar o primeiro byte faz com o checksum seja diferente, e no final das contas, quando isto tudo é convertido para base58, o endereço gerado final fica totalmente diferente, apesar da chave pública ser a mesma.
Se matematicamente é possível derivar a partir de fórmulas para encontrar o endereço público, pq seria matematicamente impossível realizarmos o sentido inverso ? Não tem como decompor ?
A resposta é complexa e não domino 100% o tópico, mas o que garante a irreversibilidade é o problema do logaritmo discreto. Dá uma olhada nesse link para uma introdução: www.gta.ufrj.br/grad/06_2/renan/OProblemadoLogaritmoDiscretoemCurvasElpt.html
Outro exemplo é empregado no rsa. Procure no canal um vídeo sobre criptografia assimétrica que lá eu explico melhor.
Uma pergunta q talvez não faça muito sentido.
Mas no caso, se eu tiver a publickey o HEX, isso seria um HEX que faz parte da privatekey ou só um hex da publickey?
Pensei isso por várias vezes pesquisar alguns address no Google e em baixo aparecer a HEX.
TypeError: Expected Buffer
olá, estou com uma dúvida...
com a mesma "semente" eu consigo criar os 3 tipos de endereços bitcoin (começado em 1, 3 ou bc1) e os 3 endereços posso usar para movimentar os Bitcoins?
Sim. Porém são endereços tecnicamente diferentes
1 - endereço legacy
3 - Segwit dentro de um P2SH
bc1 - segwit nativo
O script de bloqueio e desbloqueio de cada um é diferente, mas na prática você paga menos para mover bitcoins que estão em endereços segwit.
@@TiagoSalem entendi... vc teria o script para criar as carteiras em P2SH... eu fiz um script que peguei do seu vídeo (legacy) e fiz um código para gerar e comparar com endereços de carteiras esquecidas no blockchain e para aumentar minhas chances mínimas (kkk) queria acrescentar ao meu código existente o P2SH e o Segwit Nativo. como eu posso estar enviando para vc meu código para vc ver?
Cara kd o seu video q ensinava a fazer uma criptomoeda?
Cara, tirei do ar. Não aguentava mais receber emails me pedindo pra criar moedas. Tá todo mundo louco querendo criar shitcoins pra aplicar golpes e eu não estou afim de fazer parte disso, não. O projeto continua no ar de qualquer forma: github.com/tiagosh/AltcoinGenerator
amigo a muitos anos atraz eu tinha uma carteira eth que eu abria normalmente porem para dificultar eu coloquei dois X nos lugares de numeros que lembro 2 e outro 2, a pregunta e a seguinte , eu vejo os meus eths no mesmo local no bockchain, e eu tenho tanto a chave publica, quanto a chave privada entre ''apas'' a publica tenho toda claro, como disse consigo ver os eths, a chave privada tenho tbm faltado dois numeros que esta no lugar dos X , X que e igual a 2, 2 la de cima citado, pergunta tem como descobrir a chave privada apartir da minha publica e com a privada que tenho so faltando os dois numeros que esta com x pq eu esquecir, outra coisa 15 eths, se tiver como divido com vc facebook alexandreinlovelord@hotmail.com , gmail alexandrepurificao@gmail.com , simplificando tenho a chave publica e a metade da privada
Tem como achar se você testar todas possibilidades até que a chave privada gere sua chave pública conhecida.
Olá amigo, vc pode me ajudar a recuperar minha private key?
Creio q com sua metodologia vc pode..
Sugiro que você veja os outros vídeos. Não existe método conhecido para recuperar uma private key a partir de uma public key.