{"id":9788,"date":"2023-08-14T10:54:12","date_gmt":"2023-08-14T10:54:12","guid":{"rendered":"https:\/\/www.bitnovo.com\/blog\/?p=9788"},"modified":"2022-05-16T20:23:48","modified_gmt":"2022-05-16T20:23:48","slug":"qual-e-o-numero-nonce","status":"publish","type":"post","link":"https:\/\/www.bitnovo.com\/blog\/en\/qual-e-o-numero-nonce","title":{"rendered":"Qual \u00e9 o n\u00famero Nonce?"},"content":{"rendered":"<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_82_2 counter-hierarchy ez-toc-counter ez-toc-transparent ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">Table of Contents<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"Alternar tabla de contenidos\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #ffffff;color:#ffffff\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #ffffff;color:#ffffff\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 eztoc-toggle-hide-by-default' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/www.bitnovo.com\/blog\/en\/qual-e-o-numero-nonce\/#como_funciona_o_nonce\" >Como funciona o Nonce?<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/www.bitnovo.com\/blog\/en\/qual-e-o-numero-nonce\/#nonce_na_blockchain\" >Nonce na blockchain<\/a><\/li><\/ul><\/nav><\/div>\n<span class=\"span-reading-time rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Tiempo de lectura:<\/span> <span class=\"rt-time\"> 3<\/span> <span class=\"rt-label rt-postfix\">minutos<\/span><\/span><p>Um dos t\u00f3picos mais importantes no mundo da criptografia da criptomoeda \u00e9 o \u201c<strong>Nonce<\/strong>\u201c. Neste artigo vamos explicar exatamente o que \u00e9 e qual \u00e9 a sua fun\u00e7\u00e3o no mundo das criptomoedas.<\/p>\n<p>O nonce \u00e9 caracterizado por ser um n\u00famero\u00a0<strong>aleat\u00f3rio<\/strong>\u00a0e de\u00a0<strong>uso<\/strong>\u00a0\u00fanico. \u00c9 utilizado em sistemas\u00a0<strong>criptogr\u00e1ficos<\/strong>, especificamente nos chamados protocolos de\u00a0<strong>autentica\u00e7\u00e3o<\/strong>. Estes n\u00fameros s\u00e3o gerados atrav\u00e9s de um gerador de n\u00fameros aleat\u00f3rios. Os geradores podem ser\u00a0<strong>software<\/strong>\u00a0ou\u00a0<strong>hardware<\/strong>. Uma vez gerados, os n\u00fameros s\u00e3o utilizados numa fun\u00e7\u00e3o\u00a0<strong>criptogr\u00e1fica espec\u00edfica<\/strong>.<\/p>\n<p>O n\u00famero \u00e9 utilizado\u00a0<strong>para programar a fun\u00e7\u00e3o<\/strong>. Uma vez utilizado, o n\u00famero\u00a0<strong>nunca mais poder\u00e1 ser utilizado.<\/strong>\u00a0Da\u00ed a dif\u00edcil implementa\u00e7\u00e3o do \u201cNonce\u201d. Para que o processo seja executado corretamente, \u00e9 necess\u00e1rio garantir que este n\u00famero nunca se repetir\u00e1 na exist\u00eancia do sistema criptogr\u00e1fico, o que n\u00e3o \u00e9 tarefa f\u00e1cil.<\/p>\n<p>A gera\u00e7\u00e3o aleat\u00f3ria destes n\u00fameros garante a\u00a0<strong>seguran\u00e7a<\/strong>\u00a0da fun\u00e7\u00e3o criptogr\u00e1fica na qual \u00e9 utilizada. Portanto, na sua gera\u00e7\u00e3o n\u00e3o pode haver um\u00a0<strong>padr\u00e3o<\/strong>\u00a0reconhec\u00edvel, pois de outra forma poderia\u00a0<strong>quebrar<\/strong>\u00a0os sistemas criptogr\u00e1ficos e com ele a seguran\u00e7a dos nossos\u00a0<strong>ativos digitais.<\/strong><\/p>\n<h2><span class=\"ez-toc-section\" id=\"como_funciona_o_nonce\"><\/span><strong>Como funciona o Nonce?<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>Cuando Satoshi dise\u00f1\u00f3 la\u00a0<b>primera<\/b>\u00a0<b>criptomoneda<\/b>,\u00a0<a href=\"https:\/\/www.bitnovo.com\/blog\/que-es-bitcoin\/\">Bitcoin<\/a>,\u00a0inclu\u00eddo na sua opera\u00e7\u00e3o um forte uso da criptografia. Bitcoin usa criptografia assim\u00e9trica, o que significa que ao emitir uma transa\u00e7\u00e3o ou minera\u00e7\u00e3o um bloco a rede faz uso da fun\u00e7\u00e3o de hash chamada\u00a0<a href=\"https:\/\/www.bitnovo.com\/blog\/que-es-y-como-funciona-el-algoritmo-sha-256\/\"><b>SHA-256.\u00a0<\/b><\/a>Esta fun\u00e7\u00e3o torna poss\u00edvel a gera\u00e7\u00e3o de cordas de texto \u00fanicas e irrepet\u00edveis.<\/p>\n<p>Tal como o Bitcoin, muitas outras\u00a0<strong>criptomoedas<\/strong>\u00a0usam criptografia para o seu funcionamento, por isso o\u00a0<strong>Nonce<\/strong>\u00a0\u00e9 muito mais importante do que pens\u00e1vamos. No entanto, o funcionamento do Nonce n\u00e3o se limita apenas \u00e0\u00a0<strong>blockchain.<\/strong><\/p>\n<p>O nonce \u00e9 um campo de\u00a0<strong>34 bits<\/strong>\u00a0ou\u00a0<strong>4 bytes<\/strong>\u00a0que, como mencionamos anteriormente, n\u00e3o deve ser repetido. Para isso \u00e9 necess\u00e1ria uma variante do tempo que impossibilite a repeti\u00e7\u00e3o.<\/p>\n<p>No caso do Bitcoin, o nonce participa na gera\u00e7\u00e3o de um\u00a0<strong>Block ID ou Block Hash.<\/strong>\u00a0Este Block ID \u00e9 criado atrav\u00e9s do algoritmo de consenso chamado\u00a0<strong>Prova de Trabalho.<\/strong>\u00a0Uma das tarefas do nonce \u00e9 ajudar a verificar se a prova de trabalho foi executada com sucesso. A tarefa mais dif\u00edcil deste processo \u00e9 encontr\u00e1-lo.<\/p>\n<p>Isto porque cada bloco que forma a blockchain tem um identificador irrepet\u00edvel. Este Block ID \u00e9 um\u00a0<b><a href=\"https:\/\/www.bitnovo.com\/blog\/que-es-un-hash\/\">Hash<\/a>\u00a0SHA-256<\/b>\u00a0que tem caracter\u00edsticas \u00fanicas como resultado de um processo de minera\u00e7\u00e3o extremamente caro.<\/p>\n<p>Em Bitcoin, quando os mineiros se preparam para come\u00e7ar a minera\u00e7\u00e3o, t\u00eam em conta um conjunto de par\u00e2metros concedidos pela rede. Entre esses par\u00e2metros est\u00e1 o\u00a0<strong>Hash Target ou alvo. O Hash Target<\/strong>\u00a0\u00e9 um n\u00famero\u00a0<strong>de 256 bits de largura<\/strong>\u00a0apresentado por cada n\u00f3 Bitcoin. Este n\u00famero dita o limite m\u00e1ximo de\u00a0<strong>valor decimal<\/strong>\u00a0de um Block ID num dado momento, isto \u00e9, o que um hash deve medir para que seja aceite pela rede.<\/p>\n<p>Quanto menor for o Target Hash, mais complicado ser\u00e1 encontrar o Bloco Hash v\u00e1lido. Para encontrar a combina\u00e7\u00e3o certa, os mineiros devem ter em conta dados como a vers\u00e3o, a\u00a0<strong>Raiz Merkle<\/strong>, o hash de bloco anterior, a marca de tempo do bloco e a dificuldade da rede e o nonce gerado pelo mineiro. Com todos eles o mineiro vai come\u00e7ar o processo de\u00a0<strong>gera\u00e7\u00e3o<\/strong>\u00a0do\u00a0<strong>Block ID<\/strong>. Este \u00e9 mais um dos processos em que o Nonce \u00e9 crucial.<\/p>\n<p>No caso de o mineiro gerar um valor decimal de hash diferente daquele marcado pelo Target ter\u00e1 de\u00a0<strong>recome\u00e7ar<\/strong>\u00a0o processo gerando um\u00a0<strong>novo Nonce<\/strong>\u00a0e recalculando os restantes dados. Isto significa calcular um\u00a0<strong>novo hash<\/strong>\u00a0at\u00e9 que a solu\u00e7\u00e3o correta seja encontrada. No processo, pode calcular bili\u00f5es de\u00a0<strong>Nonces<\/strong>. Uma vez encontrado o certo, o mineiro poder\u00e1 aceder\u00a0<strong>\u00e0 recompensa do bloco.<\/strong><\/p>\n<p>Embora o nonce tenha contribu\u00eddo constantemente para todo este processo, o seu trabalho ainda n\u00e3o est\u00e1 terminado. Uma vez que o\u00a0<strong>mineiro<\/strong>\u00a0tenha resolvido o problema, esta\u00a0<strong>solu\u00e7\u00e3o<\/strong>\u00a0vai para a rede com todos os seus dados, incluindo o Nonce. Quando os n\u00f3s recebem toda a\u00a0<strong>informa\u00e7\u00e3o<\/strong>, s\u00e3o respons\u00e1veis por\u00a0<strong>verificar<\/strong>\u00a0se a solu\u00e7\u00e3o dos mineiros \u00e9 realmente\u00a0<strong>v\u00e1lida<\/strong>\u00a0para o problema colocado pela rede.<\/p>\n<p>Neste caso, a realiza\u00e7\u00e3o da verifica\u00e7\u00e3o levar\u00e1 apenas\u00a0<strong>um segundo<\/strong>, uma vez que se trata de um procedimento muito\u00a0<strong>simples.<\/strong>\u00a0Isto deve-se ao\u00a0<strong>Nonce gerado<\/strong>. Com este n\u00famero \u00e9 muito f\u00e1cil verificar\u00a0<strong>a validade<\/strong>\u00a0do novo hash.<\/p>\n<div id=\"image_820580238\" class=\"img has-hover x md-x lg-x y md-y lg-y\">\n<div class=\"img-inner dark\"><img fetchpriority=\"high\" decoding=\"async\" class=\"attachment-large size-large ls-is-cached lazyloaded\" src=\"https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/06\/Qu%C3%A9-es-el-n%C3%BAmero-Nonce.jpg\" sizes=\"(max-width: 768px) 100vw, 768px\" srcset=\"https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/06\/Qu\u00e9-es-el-n\u00famero-Nonce.jpg 768w, https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/06\/Qu\u00e9-es-el-n\u00famero-Nonce-300x205.jpg 300w\" alt=\"Qu\u00e9 es el n\u00famero Nonce\" width=\"768\" height=\"526\" data-srcset=\"https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/06\/Qu\u00e9-es-el-n\u00famero-Nonce.jpg 768w, https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/06\/Qu\u00e9-es-el-n\u00famero-Nonce-300x205.jpg 300w\" data-src=\"https:\/\/www.bitnovo.com\/blog\/wp-content\/uploads\/2021\/06\/Qu\u00e9-es-el-n\u00famero-Nonce.jpg\" data-sizes=\"(max-width: 768px) 100vw, 768px\" \/><\/div>\n<\/div>\n<h2><span class=\"ez-toc-section\" id=\"nonce_na_blockchain\"><\/span><strong>Nonce na blockchain<\/strong><span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>O nonce tamb\u00e9m desempenha<b>\u00a0um papel importante\u00a0<\/b>em blockchains de criptomoedas derivados de Bitcoin, incluindo<b>\u00a0Dash ou\u00a0<a href=\"https:\/\/www.bitnovo.com\/blog\/que-es-litecoin\/\">Litecoin<\/a>.<\/b><\/p>\n<p>Isto porque estas criptomoedas t\u00eam na sua programa\u00e7\u00e3o a utiliza\u00e7\u00e3o do Nonce. Note-se que qualquer sistema que utilize o mecanismo de consenso \u201c<a href=\"https:\/\/www.bitnovo.com\/blog\/que-es-proof-of-work-el-protocolo-de-consenso-de-bitcoin\/\"><b>Prova de trabalho\u201d<\/b><\/a>\u00a0<strong>utilizar\u00e1 o Nonce no seu funcionamento.<\/strong><\/p>\n<p>No entanto, os blockchains que n\u00e3o aqueles que usam a prova de trabalho (PoW) tamb\u00e9m podem empregar nonce. Blockchains que incluem o protocolo<a href=\"https:\/\/www.bitnovo.com\/blog\/que-es-y-como-funciona-proof-of-stake\/\"><b>\u00a0Proof of Stake (PoS)\u00a0<\/b><\/a>tamb\u00e9m o usam. Podemos encontrar exemplos como\u00a0<a href=\"https:\/\/www.bitnovo.com\/blog\/que-es-stellar\/\">Stellar<\/a>,\u00a0<a href=\"https:\/\/www.bitnovo.com\/blog\/que-es-neo-todo-sobre-el-gigante-asiatico\/\">NEO<\/a>\u00a0ou Waves. N\u00e3o h\u00e1 apenas blockchains PoS ou PoW.<\/p>\n<p>Os blockchains que utilizam protocolos como testes de tempo decorridos (<strong>PoET<\/strong>) ou\u00a0<strong>Prova de Autoridade (PoA)<\/strong>\u00a0tamb\u00e9m s\u00e3o adicionados \u00e0 sua utiliza\u00e7\u00e3o.<\/p>\n<p>No entanto, o procedimento ainda \u00e9 gerar um n\u00famero aleat\u00f3rio que garante um alto n\u00edvel\u00a0<strong>de seguran\u00e7a<\/strong>\u00a0criptogr\u00e1fica na blockchain.<\/p>\n<p>O Nonce \u00e9 um n\u00famero\u00a0<strong>chave<\/strong>\u00a0tanto na tecnologia blockchain como na criptografia. Gra\u00e7as a este n\u00famero aleat\u00f3rio, as a\u00e7\u00f5es que realizamos em blockchains s\u00e3o muito mais\u00a0<strong>seguras.<\/strong><\/p>\n","protected":false},"excerpt":{"rendered":"<p><span class=\"span-reading-time rt-reading-time\" style=\"display: block;\"><span class=\"rt-label rt-prefix\">Tiempo de lectura:<\/span> <span class=\"rt-time\"> 3<\/span> <span class=\"rt-label rt-postfix\">minutos<\/span><\/span>Um dos t\u00f3picos mais importantes no mundo da criptografia da criptomoeda \u00e9 o \u201cNonce\u201c. Neste artigo vamos explicar exatamente o que \u00e9 e qual \u00e9 a sua fun\u00e7\u00e3o no mundo das criptomoedas. O nonce \u00e9 caracterizado por ser um n\u00famero\u00a0aleat\u00f3rio\u00a0e de\u00a0uso\u00a0\u00fanico. \u00c9 utilizado em sistemas\u00a0criptogr\u00e1ficos, especificamente nos chamados protocolos de\u00a0autentica\u00e7\u00e3o. Estes n\u00fameros s\u00e3o gerados atrav\u00e9s [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":9770,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[226],"tags":[],"class_list":["post-9788","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-blockchain2"],"_links":{"self":[{"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/posts\/9788","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/comments?post=9788"}],"version-history":[{"count":0,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/posts\/9788\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/media\/9770"}],"wp:attachment":[{"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/media?parent=9788"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/categories?post=9788"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.bitnovo.com\/blog\/wp-json\/wp\/v2\/tags?post=9788"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}