Loading

Module 1: Introdução ao Blockchain

Nota de Estudos
Study Reminders
Support
Text Version

Computação De Confiança

Set your study reminders

We will email you at these times to remind you to study.
  • Monday

    -

    7am

    +

    Tuesday

    -

    7am

    +

    Wednesday

    -

    7am

    +

    Thursday

    -

    7am

    +

    Friday

    -

    7am

    +

    Saturday

    -

    7am

    +

    Sunday

    -

    7am

    +

Então, voltando ao blockchain, agora vamos dizer que a tecnologia blockchain é uma inovação digital que tem o potencial de impactar significativamente as atividades de computação confiávele, portanto, as preocupações de segurança cibernética como um todo. Por isso, computação confiável é um conceito que quando você faz computação e se você depende dos resultados da computação e por computação nós não só queremos dizer número crunching, nós também significamos todo o ecossistema.A troca de informações sobre a rede, o armazenamento, os bancos de dados, todas essas coisas somos nós a cachaçar juntos como computação. Mas quando você faz computação e seu sistema depende como o E- sistema de governança ou seu sistema de identidade ou seu sistema de gerenciamento de grau ou seu sistema de registro de propriedade, isso dependente de todo um ecossistema de computação.Então, mas então se você estiver dependendo do ecossistema de computação, existem muitas possibilidades diferentes pelas quais dados nesse ecossistema podem ser impactados e adulterados e ser ele enquanto ele é transitando através da rede, seja enquanto ele está em armazenamento, seja enquanto ele está sendo computado. Por isso, temos que nos preocupar com a computação confiável quando você pode confiar no ambiente de computação para produzir resultado.Mantenha a integridade do resultado e me dê transparência de como está processando os dados, como ele está armazenando os dados e como ele está protegendo os dados contra vários tipos de ataques e que é o que o blockchain pode dar a você. E as propriedades atrativas de blockchain para esta finalidade é que ele lhe dá um registro de prova de adulteração de dados com autenticação o que significa que os dados também são assinados por quem criou esses dados e então ele é imutável ou quase imutável.Então o que significa que uma vez escrito, ele é criptograficamente muito computacionalmente computacionalmente remover esse log ou para adulterar o log. E se você quiser a transparência mas não revelar as informações do private , você pode fazer isso em blockchain. Por isso, é possível que você possa torná-lo preservado. E ele fornece uma base para computação confiável em cima de quais aplicativos podem ser construídos.(Consulte o Tempo do slide: 50:22)Então, vamos falar um pouco sobre quando dissemos confiança, o que você quer dizer com confiança? Por isso, modelo de confiança que você assume em caso de ambiente computacional, temos que considerar o que são a confiança é meio que como oposto ao seu modelo de ataque. Como quem pode atacar ou como modelo de ameaça como quais são as ameaças à integridade e privacidade e disponibilidade das informações? Então antes de tudo, você pode colocar sua confiança no hardware e dizer que o hardware não irá vazar sua chave criptográfica.Mas isso é verdade e não é necessariamente verdade porque há algo chamado ataques de canal do site. Assim, quais pessoas mostraram que podem realmente obter sua chave criptográfica enquanto você está fazendo criptografia ou está fazendo decriptografia, eles podem olhar para o poder que você está desenhando do seu poder que você conhece fonte ou eles podem olhar para a assinatura eletromagnética ou eles podem olhar no momento e todos os tipos de coisas pelas quais eles mostraram que podem revelar sua chave criptográfica.Então, a menos que seu hardware esteja em uma prova para esse tipo de manipulação, seu hardware pode não ser confiável. Então hoje em dia há muito trabalho em como fazer um hardware confiável usando enclaves e outros tipos de mecanismos e até mesmo lá temos pessoas mostraram seus caminhos para subverter as proteções que as empresas de hardware vêm com. Você já deve ter ouvido falar nos bugs de meltdown e Spectre que surgiu há dois anos.Então você pode ou não ser capaz de confiar no hardware. Então, nesse caso, se você não confia em seu hardware, você tem que se certificar de fazer a proteção contra qualquer tipo de vazamento de chave e todas as que coisas na próxima camada que é a camada de sistema operacional ou camada de firmware. E lá a questão é que agora o sistema operacional é basicamente criar processos e eles têm memória em que os resultados computacionais e coisas são mantidos temporariamente.E essa memória também é hierárquica. Então o que significa que parte de parte dos endereços de memória às vezes vem para o cachê, e tudo o que isso acontece. Portanto, portanto, a questão é, existem maneiras pelas quais as pessoas podem espiar o seu cache ou espiar a sua memória e então olhar, obter suas informações privadas, sua chave privada e todas essas coisas? Então isso tem essa é outra questão de confiança .Agora se você você está usando máquinas virtuais, então você tem que saber se o seu hipervisor vaza informações, eles podem espiar a sua memória de processo e todas essas coisas. E então seus aplicativos podem ser também ter bugs e pode haver ataque cibernético. E enquanto o aplicativo está usando alguns de seus dados, ele pode realmente adulterar isso ou pode realmente revelar chaves privadas e tudo isso se o seu aplicativo estiver usando a sua chave privada sem qualquer proteção.Então a questão é: qual é a sua âncora de confiança? Certo é no hardware? Ou está no sistema operacional? É no aplicativo ou você confia em um fabricante como o Intel ou outros para realmente te dar uma plataforma confiável?(Consulte o Tempo do slide: 53:43)O mas em caso de aplicativos como E-governança e você conhece sistema de gerenciamento de grau ou o que for, a questão é, você confia no banco que eles não estão tirando pequenas quantias do seu saldo o tempo todo? Existe um filme chamado Office Space que estava tomando apenas um você sabe fração de um centavo de cada transação, e muito em breve eles acumularam milhões?Você confia no departamento de registro de terra para manter a integridade dos registros de terra? Você confia nos funcionários da UIDAI para manter seus outros logs de acesso a dados você conhece integridade disso? Você confia em seus administradores de sistema local para não dar a volta por suas costas e alterar seus dados ou ler seus dados e, em seguida, excluir todas essas informações do log do sistema.Se você tem um sistema de gerenciamento de correção em sua empresa, como você sabe que as correções estão sendo feitas, ou alguém está fazendo um patch não autorizado para atacar o seu sistema e coisas do tipo. Então que são esses são os problemas que você tem que se preocupar. Até o momento, falamos sobre o modelo de confiança e o modelo de ameaça correspondente que são meio inverso entre si.(Consulte o Slide Time: 54:55)Agora vamos olhar para alguns dos casos que falamos antes em detalhes à luz do que discutimos desde então.(Consulte o Tempo do slide: 55:05)Então, vamos primeiro olhar para como se pode criar uma moeda digital. E esta é Arvind Narayanan ’ s cripto coin versão 1.(Consulte o Tempo do slide: 55:15)Então o que você pode fazer, você pode dizer que eu vou ser a sua hortelã, e eu vou criar uma moeda digital. E aí eu vou dar uma ID de moeda. E então eu terei uma chave pública e chave privada e eu assinarei a moeda com a minha chave privada. Ok, então qualquer pessoa que tenha a minha chave pública porque normalmente as chaves públicas são conhecidas por todo mundo, então ele pode verificar que é minha assinatura e uma vez que tem minha assinatura é uma moeda válida.(Consulte o Tempo do slide: 55:50)Então, então, eu posso então dar a moeda para outra pessoa. Talvez em troca de algum valor, você sabe no mundo real. Como eu compro um livro dele. E aí eu dou para um amigo. Então como faço para dar a um amigo? O amigo cria uma chave pública e privada. E dou ao amigo que digo que pague ao seu endereço chave pública esta moeda, e assino-a com a minha chave privada. Então qualquer um pode conferir se eu assinei usando minha chave pública. E eu também com o intuito de manter a história de como essa moeda foi criada, e quemdeu a quem eu criei um link para as informações anteriores de que a moeda foi criada por mim. Então esse link vermelho que você está vendo aqui é, na verdade, aquele link que está mantendo essa história junto.(Consulte o Tempo do slide: 56:43)Agora desde que eu tenho agora a moeda eu ganhei dando um livro ou algo vendendo o seu livro. Então agora eu quero dar para o Arvind que agora me dá algo como talvez outro livro. Então eu quero dar o dinheiro para o Arvind. Então eu digo que pagar ao Arvind ’ s endereço público, chave pública e depois eu assiná-lo, certo. E eu sou o amigo. Então eu assino. E então eu mantenho um link para o link anterior para anterior para informações, pedaços de informações.Então, se alguém quiser conferir de onde veio essa moeda, então ele tem que basicamente ir abaixo os links e ver onde a moeda foi criada, quem conseguiu primeiro e quem ficou em segundo, e assim por diante. Então, isso é de maneira que toda vez que eu passo a moeda, todas essas informações também são passadas sobre o histórico de moedas. Assim, Arvind agora é dono da moeda.(Consulte o Tempo do slide: 57:35)Mas se eu for desonesto, o que eu posso fazer, já que isso é digital, então eu não tenho nenhum problema para transmiti-lo para várias pessoas. Então eu na verdade eu dou uma cópia para Ravi, outro amigo para outra coisa que eu receito dele e fazer a mesma ligação e tudo mais. Agora a questão é que eu tinha apenas uma moeda. Agora eu dei para duas pessoas.Agora essas duas pessoas vão ter que você sabe que ambas têm a mesma moeda que não é possível certo porque se você tem uma moeda mundial real, então você não poderia ter dado para duas pessoas já que você é digital você está cortando e colando. Então você pode realmente dar para duas pessoas. E isso é o que se chama de gasto duplo. Então eu fiz um gasto duplo, que não pode ser feito em um dinheiro real Sistema monetário.Porque então, você sabe se eu posso fazer o dobro de gastos, eu posso fazer o triplo de gastos, e então o valor que recebi dessa única moeda é o dobro do valor real, certo? Porque eu recebi algo de Arvind eu consegui algo de Ravi, mas eu estou apenas dando a mesma coisa. E eles também quando eles tentam usá-la, eles vão ser um problema. Portanto, isso é chamado de gasto duplo ou já que na verdade é um ataque , chamem-no de duplo ataque de gastos.(Consulte o Slide Time: 58:56)Então grande desafio sempre esteve na moeda digital. A partir de 80 ’ s pessoas têm tentado resolver esse problema de criação de dinheiro digital e isso tudo o que esta gente chegou a esse problema que como você para de gastar o dobro de gastos. E se você puder fazer o dobro de gastos, você pode fazer o triplo, quadruplicar todo tipo de gasto.(Consulte o Tempo do slide: 59:18)Então temos que fazer algo mais do que o que acabamos de mostrar na versão 1. Assim, a versão 2 é como podemos fazer uma moeda digital à prova de gastos duplo.(Consulte o Tempo do slide: 59:37)Então o que nós, o que o Arvind fez foi esse dizer que vamos criar um histórico de todas as transações. Então mais cedo quando estávamos dando a moeda para alguém, nós não estávamos dando nenhum número para isso, certo. Então nós estávamos apenas conectando-os através deste links. Agora dizemos que teremos várias transações e cada transação vai gastar basicamente uma moeda, mas precisamos saber de onde veio aquela moeda de, a partir de qual transação.Então temos que ir ver a próxima transação e finalmente, haverá uma transação quando a moeda foi criada, certo. Então, esse histórico tem que ser mantido.(Consulte o Tempo do slide: 1:00:17)E esse histórico agora a estrutura de dados em que você guarda a história e tudo mais é uma questão de detalhes como, mas a questão principal é, quem mantém o controle da transação? Como quem me diz que alguém está tentando fazer um gasto duplo. E então se eu tiver feito um gasto duplo para dar a moeda a duas pessoas, quem decide quem de fato fica com o dinheiro e quem é quem não vai receber o dinheiro.E então o que significa que alguém tem que me dizer qual deles é uma transação válida, qual delas não é transação válida.(Consulte o Slide Time: 1:00:54)Então conceito de validade aqui seria que a moeda que foi usada na transação é uma transação válida. Além disso, ele ainda não é consumido, e o valor total fora dessa transação deve ser valor total em. Então, se eu estou com várias moedas de múltiplas fontes, posso usar isso em uma transação porque nem tudo tem o valor de uma moeda. Assim, posso conseguir três moedas diferentes para comprar uma coisa que vale de três moedas.Mas então o valor total no e valor fora deve ser o mesmo. E então deveria ser assinado pelos donos de todas as moedas consumidas, certo. Portanto, esta é a questão da validade. Então aquele histórico que você viu, tem que ser de transações válidas, certo? Então alguém tem que verificar a validade da transação e alguém tem que usar o histórico para me dizer se o gasto duplo está sendo feito.(Consulte o Tempo do slide: 1:01:45)Então agora como você realmente mantém as moedas? Se você torna as moedas imutáveis e tudo isso é um detalhe para que não nos preocupemos com isso neste ponto.(Consulte o Tempo do slide: 1:01:56)Então a questão crucial é quem mantém a história e quem valida as transações, e quem me diz que isso é inválido porque há um gasto duplo. Assim, uma solução possível, de curso, é ter um terceiro confiável, certo. Então e uma vez que você tenha confiado em terceiros, estamos de volta ao mesmo problema convencional que eu tenho um terceiro confiável.Ele mantém o livro-caixa de transações e ele verifica consultoras o ledger toda vez e a moeda está tentando ser usada em uma transação para garantir que esta seja uma transação válida. E, mas a questão é: devemos confiar no terceiro confiável. A terceira parte confiávelpode ser uma entidade tendente, e eles podem realmente sempre arbitrar em favor de algumas pessoas e arbitrar contra algumas pessoas.Então, ele derrota o propósito de um mecanismo de consenso distribuído e tudo isso e é aí que entra em jogo a solução baseada em blockchain. Então terceiro confiável não é nossa solução preferida porque essa solução já existe e sendo usada hoje. Mas queremos remover a terceira parte confiável e criar um sistema de confiança no qual possamos transpor confiando o sistema, não confiando em uma única entidade . Então, essa é a questão sobre essa questão de criptomoedas.