< Return to Video

Segurança para muitos em tempo chave (23 min)

  • 0:00 - 0:05
    Neste segmento veremos como usar cifras de bloco para criptografar mensagens múltiplas
  • 0:05 - 0:09
    usando a mesma chave. Isto vem para cima, na prática, por exemplo, em sistemas de ficheiros onde
  • 0:09 - 0:13
    chave o mesmo é usado para criptografar arquivos múltiplos. Ele vem em protocolos de rede
  • 0:13 - 0:18
    , onde a mesma chave é utilizada para criptografar vários pacotes. Então vamos ver como fazer
  • 0:18 - 0:22
    -lo. A primeira coisa que precisamos fazer é definir o que é significa para uma cifra de ser
  • 0:22 - 0:26
    seguro quando a mesma chave é usada para criptografar mensagens múltiplas. Quando usamos o
  • 0:26 - 0:31
    tecla mais uma vez o resultado disso é que o adversário começa a ver muitos cibernético
  • 0:31 - 0:36
    texto criptografado utilizando a mesma chave. Como resultado, quando se definir a segurança, estamos
  • 0:36 - 0:41
    vai permitir que o adversário para montar o que é chamado um ataque de texto escolhido simples. Em
  • 0:41 - 0:46
    outras palavras, o adversário pode obter a criptografia de mensagens arbitrárias de seu
  • 0:46 - 0:50
    escolha. Assim, por exemplo, se o adversário interagindo com Alice. O
  • 0:50 - 0:54
    adversário pode pedir a Alice para criptografar mensagens arbitrárias da do adversário
  • 0:54 - 0:58
    escolha. E Alice vai em frente e criptografar as mensagens e dar a
  • 0:58 - 1:03
    adversário dos textos cifrados resultantes. Você pode se perguntar por que Alice nunca fazer isso.
  • 1:03 - 1:07
    Como isso poderia acontecer na vida real? Mas acontece que este é realmente
  • 1:07 - 1:12
    muito comum na vida real. E, de fato, essa modelagem é bastante conservador
  • 1:12 - 1:16
    modelagem da vida real. Por exemplo, o adversário pode enviar um e-mail Alice. Quando
  • 1:16 - 1:21
    Alice recebe o e-mail, a grava-lo em seu disco criptografado, assim criptografar o
  • 1:21 - 1:26
    e-mail adversário usando sua chave secreta. Se mais tarde o adversário rouba este disco, em seguida,
  • 1:26 - 1:31
    ele obtém a criptografia de um e-mail que ele enviou Alice com chave secreta de Alice. Assim
  • 1:31 - 1:36
    que é um exemplo de um ataque de texto escolhido planície, onde o adversário desde Alice
  • 1:36 - 1:41
    com uma mensagem e ela criptografada que a mensagem usando sua própria chave. E depois
  • 1:41 - 1:45
    atacante foi capaz de obter o texto cifrado resultante. Então essa é a
  • 1:45 - 1:50
    poder do adversário. E então o objetivo do adversário é, basicamente, para quebrar
  • 1:50 - 1:54
    segurança semântica. Portanto, vamos definir isso com mais precisão. Como de costume, nós vamos
  • 1:54 - 1:59
    definir a segurança semântica em um ataque de texto simples escolhido através de dois experimentos,
  • 1:59 - 2:05
    nula experiência e experimentação, que são modeladas como um jogo entre um desafiante
  • 2:05 - 2:10
    e um adversário. Quando o jogo começa, o grande desafio é que vai escolher uma amostra aleatória
  • 2:10 - 2:14
    chave K. E agora o adversário basicamente começa a consultar o desafiante. Assim, o
  • 2:14 - 2:18
    adversário agora começa por enviar uma consulta de segurança semântico, ou seja, ele
  • 2:18 - 2:23
    envia duas mensagens, M zero e um M. Eu adicionei um outro índice, mas deixe-me ignorar
  • 2:23 - 2:27
    índice que extra por um tempo. Assim, o adversário apresenta duas mensagens, M zero e
  • 2:27 - 2:32
    M uma, que acontece ser do mesmo comprimento. E, em seguida, o adversário recebe
  • 2:32 - 2:36
    criptografia de uma dessas mensagens, quer de M zero ou de M uma. Em
  • 2:36 - 2:40
    experiência zero, ele recebe a criptografia de M zero. No primeiro experimento,
  • 2:40 - 2:45
    ele recebe a criptografia de um M. Então, até agora isso parece familiar este parece
  • 2:45 - 2:49
    exatamente como um padrão de segurança semântico [inaudível]. No entanto, o ataque de texto simples
  • 2:49 - 2:54
    adversário pode agora repetir esta consulta novamente. Então, agora você pode emitir uma consulta com
  • 2:54 - 2:58
    outros dois textos simples, de novo do mesmo comprimento, e, novamente, você receberia o
  • 2:58 - 3:03
    criptografia de um deles. No experimento zero, você receberia a criptografia de M
  • 3:03 - 3:08
    zero. No primeiro experimento você receberia a criptografia de um M. E o atacante
  • 3:08 - 3:13
    pode continuar a emitir consultas como este. Na verdade nós vamos dizer que ele pode emitir até Q
  • 3:13 - 3:17
    consultas deste tipo. E então, lembre-se, cada vez que ele emite um par de mensagens.
  • 3:17 - 3:21
    que venham a ser do mesmo comprimento e cada vez que ele ou obtém a encriptação
  • 3:21 - 3:26
    do lado esquerdo ou do lado direito novamente em zero experimento ele sempre terá o
  • 3:26 - 3:30
    criptografia da mensagem deixada no experimento que ele sempre terá o
  • 3:30 - 3:34
    encriptação da mensagem esquerda. E, então o objetivo do adversário é, basicamente, para descobrir
  • 3:34 - 3:38
    saber se ele está em zero experimental ou em experimentação. Em outras palavras, se
  • 3:38 - 3:43
    ele recebia constantemente a criptografia da mensagem a esquerda ou para a criptografia de
  • 3:43 - 3:47
    a mensagem certa. Então, em certo sentido, este é um jogo padrão de segurança de apenas semântica
  • 3:47 - 3:51
    iterada muitas consultas que o atacante pode emitir a adaptativamente uma após
  • 3:51 - 3:56
    o outro. Agora, o ataque de texto simples escolhido é capturado pelo facto de que, se o
  • 3:56 - 4:01
    atacante quer a criptografia de uma mensagem m particular. O que ele poderia fazer é,
  • 4:01 - 4:05
    por exemplo, usam J consulta para J soma, onde neste J consulta ele vai definir tanto o zero
  • 4:05 - 4:10
    mensagem ea mensagem de um ser a mesma mensagem exatamente M. Em outras palavras,
  • 4:10 - 4:14
    tanto a mensagem a esquerda e direita da mensagem são os mesmos, e ambos são definidos para
  • 4:14 - 4:19
    a mensagem M. Neste caso, o que irá receber, uma vez que ambas as mensagens são os mesmos,
  • 4:19 - 4:23
    ele sabe que vai receber a criptografia desta mensagem M que ele era
  • 4:23 - 4:28
    interessados polegadas Então este é exatamente o que significa um ataque escolhido [inaudível].
  • 4:28 - 4:33
    Quando a consultoria pode enviar uma mensagem m e receber a criptografia de que
  • 4:33 - 4:37
    m mensagem especial de sua escolha. Então algumas de suas consultas podem ser deste escolheu
  • 4:37 - 4:42
    sabor texto simples onde a mensagem do lado esquerdo é igual à mensagem do lado direito,
  • 4:42 - 4:47
    , mas algumas das consultas pode ser padrão de segurança consultas semânticas onde as duas
  • 4:47 - 4:51
    mensagens são distintas e que realmente lhe dá informações sobre se ele está em
  • 4:51 - 4:55
    experiência zero ou em um experimento. Agora, agora você deve ser usado para este
  • 4:55 - 5:00
    definição, sempre que dizemos que o sistema é semanticamente seguro sob uma planície escolhida
  • 5:00 - 5:04
    ataque texto. Se, por todos os adversários eficientes, eles não conseguem distinguir
  • 5:04 - 5:09
    nula experiência de um experimento. Em outras palavras, a probabilidade de que, no
  • 5:09 - 5:13
    final, a saída, B Prime, que vamos denotar por a saída do experimento
  • 5:13 - 5:18
    B. Esta saída será o mesmo se nula experiência [inaudível] ou experiência
  • 5:18 - 5:22
    um. Assim, o invasor não podia distinguir entre sempre recebendo criptografias de
  • 5:22 - 5:27
    as mensagens deixadas, versus sempre recebendo criptografias das mensagens certas. Assim, em
  • 5:27 - 5:31
    sua mente, eu gostaria que você esteja pensando em um adversário que é capaz de montar um
  • 5:31 - 5:36
    escolhido ataque de texto simples, ou seja, ser dada a criptografia de mensagens arbitrárias de
  • 5:36 - 5:40
    escolha sua, e seu objetivo é quebrar a segurança semântica por algum outro desafio
  • 5:40 - 5:44
    textos cifrados. E como eu disse neste modelo [inaudível] do mundo real do
  • 5:44 - 5:49
    atacante é capaz de enganar Alice em criptografar mensagens para ele de sua escolha
  • 5:49 - 5:53
    e, em seguida, o objetivo do atacante é de alguma forma, quebrar algum texto cypher desafio. Então, eu
  • 5:53 - 5:58
    alegação de que todas as cifras que temos visto até agora balcão, ou seja determinista
  • 5:58 - 6:03
    modo ou o teclado de uma vez, sentem-se inseguros em um ataque de texto escolhido simples. Mais
  • 6:03 - 6:07
    geralmente, suponha que temos um esquema de criptografia que sempre gera a mesma cifra
  • 6:07 - 6:12
    texto para um M. mensagem particular Em outras palavras, se eu pedir o esquema de criptografia para
  • 6:12 - 6:16
    criptografar a mensagem M uma vez. E então eu pergunto o esquema de criptografia para criptografar o
  • 6:16 - 6:21
    m mensagem novamente. Se em ambos os casos, o esquema de criptografia gera a cifra mesmo
  • 6:21 - 6:27
    texto, então esse sistema não pode estar seguro em um ataque de texto escolhido simples.
  • 6:27 - 6:31
    E ambos modo determinista contador ea almofada tempo um eram de que o sabor. Eles
  • 6:31 - 6:36
    sempre imprimir o mesmo texto cifrado, recebeu a mesma mensagem. E assim vamos ver por que
  • 6:36 - 6:41
    que não pode ser escolhido de texto simples seguro. E o ataque é bastante simples, o que o
  • 6:41 - 6:46
    atacante vai fazer, é que ele vai produzir a mesma mensagem duas vezes. Este apenas diz.
  • 6:46 - 6:51
    que ele realmente quer a criptografia de M0. Então aqui o atacante é dada C0 que é
  • 6:51 - 6:56
    criptografia de M0. Então esta foi a sua consulta de texto escolhido planície onde ele realmente
  • 6:56 - 7:01
    recebeu a criptografia do M0 mensagem de sua escolha. E agora ele vai quebrar
  • 7:01 - 7:05
    segurança semântica. Então o que ele faz é que ele gera duas mensagens, M0 e M1 do
  • 7:05 - 7:10
    mesmo comprimento, e ele vai ser dada a criptografia de MB. Mas baixa e eis que,
  • 7:10 - 7:16
    dissemos que o sistema de criptografia. Sempre envia o texto cifrado mesmo quando o seu
  • 7:16 - 7:22
    criptografar a mensagem, M0. Portanto, se B é = a zero, sabemos que C, esta
  • 7:22 - 7:27
    desafiou texto cifrado, é simplesmente a = CO, porque é a criptografia de M0.
  • 7:27 - 7:32
    No entanto, se B é = a um. Então sabemos que este texto cypher desafio é a
  • 7:32 - 7:38
    criptografia de M1, que é algo diferente de zero para todos os C o atacante não é ele
  • 7:38 - 7:43
    apenas verifica a sua C é = a zero a saída do C0, em outras palavras, ele gera um. Assim, em
  • 7:43 - 7:48
    Neste caso, o atacante é perfeitamente capaz de adivinhar esta B bit, então ele sabe
  • 7:48 - 7:52
    exatamente [inaudível], dada a criptografia de M0, ou a criptografia de M1. E como um
  • 7:52 - 7:57
    resultado, a sua vantagem em ganhar este jogo é um deles. O que significa que o sistema não pode
  • 7:57 - 8:01
    possivelmente ser CPA seguro. Um não é um número insignificante. Então isso mostra que o
  • 8:01 - 8:06
    esquemas de criptografia determinísticos não pode ser CPA-seguro, mas você pode
  • 8:06 - 8:09
    maravilha bem, o que isso significa na prática? Bem, na prática, isso significa
  • 8:09 - 8:13
    novamente que cada mensagem é sempre criptografado para o mesmo texto cifrado. O que
  • 8:13 - 8:17
    isto significa é que se você está a criptografia de arquivos no disco, e acontecer de você ser criptografar
  • 8:17 - 8:21
    dois ficheiros que acontece ser o mesmo, que irá resultar em o mesmo texto cifrado e
  • 8:21 - 8:25
    , em seguida, o atacante, olhando para o disco criptografado, vai aprender que estes dois
  • 8:25 - 8:29
    arquivos realmente conter o mesmo conteúdo. O atacante pode não saber o que o
  • 8:29 - 8:33
    conteúdo é, mas ele vai aprender que esses dois arquivos criptografados são uma criptografia de
  • 8:33 - 8:38
    , o mesmo conteúdo e não deve ser capaz de aprender isso. Da mesma forma, se você enviar dois
  • 8:38 - 8:41
    pacotes cifrados na rede que acontecem para ser o mesmo, o atacante vai
  • 8:41 - 8:45
    não saber o conteúdo desses pacotes, mas ele vai aprender que os dois pacotes
  • 8:45 - 8:49
    realmente conter a mesma informação. Pense, por exemplo de uma voz criptografada
  • 8:49 - 8:54
    conversa. Cada vez há calma sobre a linha, o sistema estará enviando
  • 8:54 - 8:58
    criptografias de zero. Mas desde que a encriptação de zero são sempre mapeado para o mesmo
  • 8:58 - 9:02
    texto cifrado. Um atacante olhando para a rede será capaz de identificar exatamente
  • 9:02 - 9:06
    os pontos da conversa onde não há calma, porque ele sempre vai ver
  • 9:06 - 9:11
    aqueles texto cifra exata mesma o tempo todo. Então esses são exemplos onde determinista
  • 9:11 - 9:15
    criptografia não pode ser seguro. E como eu disse anteriormente, dizemos que o
  • 9:15 - 9:20
    criptografia determinística não pode ser semanticamente seguro sob uma planície escolhida
  • 9:20 - 9:25
    ataque texto. Então o que fazemos, bem a lição aqui é se as chaves secretas vai ser
  • 9:25 - 9:30
    usada para criptografar mensagens múltiplas, é melhor que seja o caso que, dado o mesmo
  • 9:30 - 9:34
    texto simples para criptografar duas vezes. O algoritmo de criptografia deve produzir
  • 9:34 - 9:38
    diferentes textos cifrados. E então há duas maneiras de fazer isso. O primeiro método é
  • 9:38 - 9:43
    que é chamado de encriptação aleatória. Aqui, o algoritmo de encriptação si vai
  • 9:43 - 9:47
    para escolher alguns seqüência aleatória durante o processo de criptografia e vai
  • 9:47 - 9:52
    criptografar a mensagem M utilizando essa seqüência aleatória. Então o que isto significa é que um
  • 9:52 - 9:56
    mensagem particular, M0 por exemplo, não está indo só para ser mapeado para um texto cifrado
  • 9:56 - 10:01
    , mas vai ser mapeado para uma bola toda de textos cifrados. Whereon cada
  • 10:01 - 10:07
    criptografia, basicamente, mostramos um ponto nesta bola. Então, toda vez que criptografar, o
  • 10:07 - 10:11
    algoritmo de criptografia escolhe uma seqüência aleatória, e que leva a seqüência aleatória
  • 10:11 - 10:16
    um ponto nesta bola. Claro que, o algoritmo de descodificação, quando ela toma qualquer
  • 10:16 - 10:21
    ponto nesta bola, sempre vai mapear o resultado para M zero. Do mesmo modo texto cifrado M
  • 10:21 - 10:25
    um será mapeado para uma bola, e cada vez que criptografar M um, nós basicamente de saída
  • 10:25 - 10:30
    um ponto nesta bola. E estas bolas tem que ser separado, de modo que o
  • 10:30 - 10:34
    algoritmo de encriptação, quando se obtém um ponto em que a bola correspondente a M uma,
  • 10:34 - 10:39
    será sempre saída a mensagem M uma. Deste modo, uma vez que o algoritmo de encriptação
  • 10:39 - 10:43
    usa aleatoriedade, se cifrar a mesma mensagem duas vezes, com alta probabilidade de que vai
  • 10:43 - 10:47
    obter textos cifrados diferentes. Infelizmente, isto significa que o texto cifrado
  • 10:47 - 10:51
    necessariamente tem que ser maior que o texto simples, porque de alguma forma a aleatoriedade
  • 10:51 - 10:56
    que foi usado para gerar o texto cifrado está agora codificado de algum modo no texto cifra.
  • 10:56 - 11:00
    Assim, o texto cifrado tem mais espaço. E a grosso modo, o tamanho do texto cifrado é
  • 11:00 - 11:05
    vai ser maior do que o texto simples. Por basicamente o número de bits aleatórios que
  • 11:05 - 11:09
    foram utilizados durante a criptografia. Então, se os textos simples são muito grandes, se a planície
  • 11:09 - 11:13
    textos são gigabytes longo, o número de bits aleatórios vai ser da ordem de
  • 11:13 - 11:17
    128. Então, talvez este espaço extra realmente não importa. Mas se os textos são simples
  • 11:17 - 11:22
    muito curto, talvez eles próprios são 128 bits, em seguida, adicionar um extra de 128 bits para
  • 11:22 - 11:26
    texto a cada cifra vai dobrar o tamanho do texto total de cifra. E que poderia ser
  • 11:26 - 11:31
    bastante caro. Então, como eu digo criptografia randomizado é uma solução bem, mas em alguns
  • 11:31 - 11:36
    casos que realmente introduz um pouco de custos. Então, vamos olhar para um exemplo simples.
  • 11:36 - 11:41
    Então, imagine que temos uma função pseudo-aleatório que leva insumos em um certo
  • 11:41 - 11:46
    r espaço que vai ser chamado de um espaço de uso único. E saídas, saídas na mensagem
  • 11:46 - 11:51
    espaço. E, agora, vamos definir o esquema de criptografia seguinte randomize
  • 11:51 - 11:56
    onde queremos para criptografar a mensagem m com a criptografia de tudo o que vai
  • 11:56 - 12:01
    não é o primeiro que vai gerar um r aleatório neste espaço nonce R. E então ele vai
  • 12:01 - 12:06
    para abrir um texto cypher que consistem em dois componentes, o primeiro componente vai
  • 12:06 - 12:11
    ser este valor R eo segundo componente vai ser uma avaliação de
  • 12:11 - 12:16
    função pseudo-aleatória no ponto R XOR com a mensagem M. E a minha pergunta para
  • 12:16 - 12:21
    você é, isso é o sistema de criptografia semanticamente seguro sob uma planície escolhida
  • 12:21 - 12:26
    ataque texto. Portanto, a resposta correta é sim. Mas só se o espaço R nonce é grande
  • 12:26 - 12:31
    o suficiente para que nunca se repete com R pouca probabilidade muito, muito alto. E vamos
  • 12:31 - 12:36
    rapidamente argumentar por que isso é verdade. Então, em primeiro lugar, porque F é um seguro pseudo-aleatório
  • 12:36 - 12:41
    função, podemos muito bem substituí-lo com uma função verdadeiramente aleatório. Em outras palavras,
  • 12:41 - 12:46
    este é indistinguível da de caso em que encriptar a mensagem M, usando o
  • 12:46 - 12:51
    função F verdadeiramente aleatório pouco, avaliados para apontar R e, em seguida XOR com M.
  • 12:51 - 12:57
    Mas desde que isso nunca r pouco se repete a cada texto cifra usa um pouco diferente do que r
  • 12:57 - 13:03
    isto significa é que os valores de F (r) são aleatórias uniformes cordas independentes
  • 13:03 - 13:09
    o tempo todo. Então, toda vez que criptografar uma mensagem, criptografá-lo essencialmente usando um
  • 13:09 - 13:14
    novo time pad aleatório uniforme um. E desde XORing uma seqüência uniforme com qualquer seqüência
  • 13:14 - 13:20
    simplesmente gera uma nova seqüência de uniforme, o texto cifrado resultante é distribuído como
  • 13:20 - 13:25
    apenas duas cordas aleatórias uniformes. Vou chamá-los de r e r principal. E assim, tanto em
  • 13:25 - 13:30
    experiência zero e no experimento um, tudo o atacante consegue ver são verdadeiramente uniforme
  • 13:30 - 13:36
    seqüências aleatórias r, r ', e uma vez que em ambos os experimentos o atacante está vendo o mesmo
  • 13:36 - 13:41
    distribuição, ele não consegue distinguir as duas distribuições. E assim como a segurança
  • 13:41 - 13:46
    mantém completamente quando estamos usando uma função verdadeiramente aleatório é também vou segurar quando
  • 13:46 - 13:51
    estamos usando uma função pseudo-aleatório. Ok, então este é um bom exemplo de como usar
  • 13:51 - 13:55
    o facto de a função pseudo aleatória se comporta como uma função aleatória para argumentar
  • 13:55 - 14:00
    segurança deste esquema de criptografia particular. Ok, então agora temos um bom
  • 14:00 - 14:04
    exemplo de encriptação aleatória. A outra abordagem para a construção de planície escolhida
  • 14:04 - 14:09
    texto esquemas de criptografia seguras é o que é chamado de criptografia baseada em nonce. Agora, em
  • 14:09 - 14:14
    um sistema de criptografia não-espaço, o algoritmo de criptografia realmente leva três
  • 14:14 - 14:19
    entradas invés de dois. Como é habitual que leva a chave ea mensagem. Mas ele também tem
  • 14:19 - 14:24
    introduzir um adicional chamado nonce. E da mesma forma, a descriptografia algoritmo também
  • 14:24 - 14:29
    leva o nonce como entrada, e então produz o texto resultante descriptografado simples. E
  • 14:29 - 14:34
    o que é esse valor nonce n. Este nonce é um valor público. Ela não precisa de ser
  • 14:34 - 14:38
    escondida do adversário mas o único requisito é que o par (k, n)
  • 14:38 - 14:43
    só é usada para criptografar uma mensagem única. Em outras palavras, este par (k, n)
  • 14:43 - 14:48
    deve mudar de mensagem para mensagem. E há duas maneiras de mudar isso. Uma forma
  • 14:48 - 14:53
    para mudá-la é escolher uma nova chave aleatória para cada mensagem. Ea outra maneira
  • 14:53 - 14:58
    é continuar usando a mesma chave o tempo todo, mas depois temos de escolher um novo para nonce
  • 14:58 - 15:03
    mensagem cada. E, e como eu disse, eu quero enfatizar novamente, desta nonce não precisa
  • 15:03 - 15:07
    ser secreta, e não precisa ser aleatória. O único requisito é o uso único é único.
  • 15:07 - 15:11
    E, de fato, vamos usar este termo ao longo do curso. A nonce
  • 15:11 - 15:15
    para nós, significa um valor único que não se repete. Ele não tem que ser aleatória. Assim
  • 15:15 - 15:20
    vamos olhar alguns exemplos de escolher um nonce, assim, a opção mais simples é
  • 15:20 - 15:24
    simplesmente para tornar o nonce do accounter assim, por exemplo a criação de redes
  • 15:24 - 15:29
    protocolo que você pode imaginar o nonce ser um contador de pacotes que é incrementado
  • 15:29 - 15:34
    cada vez que um pacote é enviado por um remetente ou recebidos pelo receptor, isto significa que
  • 15:34 - 15:38
    encriptador tem para manter o estado de mensagem para mensagem, principalmente, que ele tem que
  • 15:38 - 15:42
    manter esse contador volta e incrementá-lo depois de cada mensagem é transmitida.
  • 15:42 - 15:47
    Curiosamente, se o decrypter na verdade, tem o mesmo estado, então não há necessidade
  • 15:47 - 15:53
    para incluir a nuance no texto cifrado desde a nuance está implícita. Vamos dar uma olhada
  • 15:53 - 15:58
    um exemplo. O protocolo https é executado ao longo de um mecanismo de transporte confiável que
  • 15:58 - 16:03
    significa que os pacotes enviados pelo remetente são assumidos para ser recebida, de modo a uma
  • 16:03 - 16:08
    destinatário. Então, se o remetente envia pacote # 5 e # 6, então o pacote, o destinatário
  • 16:08 - 16:12
    irá receber pacote # 5 e, em seguida pacote # 6, nessa ordem. Este
  • 16:12 - 16:16
    significa que se o remetente mantém um contador de pacotes, o destinatário pode também
  • 16:16 - 16:21
    manter um contador de pacotes e dois contadores basicamente incrementar em sincronia. Neste caso
  • 16:21 - 16:25
    não há nenhuma razão para incluir o uso único em que os pacotes porque o
  • 16:25 - 16:29
    nonce é implícita entre os dois lados. No entanto, em protocolos de outros, por
  • 16:29 - 16:35
    exemplo, em IPsec, tem um protocolo IPsec projetada para criptografar a camada IP. O IP
  • 16:35 - 16:39
    camada não garante a entrega dos pedidos. E assim, o remetente pode enviar
  • 16:39 - 16:45
    pacote # 5 e # 6, então o pacote, mas aqueles que serão recebidos na ordem inversa em
  • 16:45 - 16:49
    o destinatário. Neste caso ainda é bom usar um contador de pacotes como um nonce
  • 16:49 - 16:54
    mas agora a nonce tem de ser incluído no pacote de modo a que o receptor sabe
  • 16:54 - 16:58
    que nonce para usar para desencriptar o pacote recebido. Então, como eu digo, com base nonce
  • 16:58 - 17:03
    criptografia é uma maneira muito eficiente para atingir CPA segurança. Em particular, se o
  • 17:03 - 17:07
    nonce é implícita, não mesmo aumentar o comprimento do texto cifrado. Claro
  • 17:07 - 17:12
    outro método para gerar um único nonce é simplesmente escolher o nonce aleatoriamente
  • 17:12 - 17:16
    assumindo que o espaço nonce é suficientemente grande para que, com grande probabilidade de o
  • 17:16 - 17:22
    nonce nunca será repetido para a vida da chave. Agora, neste caso, nonce
  • 17:22 - 17:26
    criptografia baseada simplesmente reduz a encriptação aleatória. No entanto, o
  • 17:26 - 17:32
    vantagem aqui é que o remetente não precisa manter todo o estado de mensagem para
  • 17:32 - 17:36
    mensagem. Então isso é muito útil, por exemplo se a criptografia acontece a tomar
  • 17:36 - 17:41
    lugar em vários dispositivos. Por exemplo, eu poderia ter um laptop e um inteligente
  • 17:41 - 17:46
    telefone. Eles podem tanto usar a mesma chave. Mas neste caso, se eu preciso de estado completo
  • 17:46 - 17:50
    criptografia, então meu laptop eo smartphone teria que coordenar a
  • 17:50 - 17:54
    certifique-se que eles nunca reutilizar os nonces mesmos. Considerando que, se os dois simplesmente tomar
  • 17:54 - 17:58
    nonces ao acaso, eles não precisam de coordenar porque era muito elevada
  • 17:58 - 18:02
    probabilidade eles simplesmente nunca escolher o nonce mesmo. Novamente assumindo que o nonce
  • 18:02 - 18:06
    espaço é grande o suficiente. Então, existem alguns casos onde a criptografia apátrida é bastante
  • 18:06 - 18:11
    importante, nomeadamente quando a mesma chave é utilizada por várias máquinas. Então, eu
  • 18:11 - 18:14
    queria encontrar, mais precisamente, o que significa segurança para nonce base
  • 18:14 - 18:19
    criptografia. E, em particular, quero enfatizar que o sistema deve permanecer
  • 18:19 - 18:23
    seguro quando o nonce são escolhidos pelo adversário. A razão é importante
  • 18:23 - 18:27
    para permitir que o adversário para escolher os nonces é porque o adversário pode
  • 18:27 - 18:31
    escolher qual texto cifrado ele quer atacar. Então, imagine o nonce acontece
  • 18:31 - 18:35
    ser um contador e acontece que, quando o couter atinge o valor 15, talvez
  • 18:35 - 18:39
    nesse ponto é fácil para o adversário para quebrar a segurança semântica. Assim, o
  • 18:39 - 18:44
    adversário vai esperar até o décimo quinto pacote é enviado e só então ele vai pedir
  • 18:44 - 18:48
    para quebrar a segurança semântica. Então, quando falamos de criptografia baseada em nonce, nós
  • 18:48 - 18:53
    geralmente permitem que o adversário para escolher o nonce eo sistema deve permanecer
  • 18:53 - 18:58
    garantir, mesmo sob essas configurações. Portanto, vamos definir o jogo CPA neste caso e é
  • 18:58 - 19:02
    realmente muito parecido com o jogo antes. Basicamente, o atacante começa a apresentar
  • 19:02 - 19:07
    pares de mensagens IM, MI0, e MI1. Obviamente que ambos têm de ser do mesmo
  • 19:07 - 19:12
    comprimento. E ele começa a fornecer o nonce. E em resposta, o adversário é dada
  • 19:12 - 19:16
    a criptografia de qualquer MI0, ou MI1. Mas usando o nonce que o adversário
  • 19:16 - 19:21
    escolheu. E, claro, como de costume, o objetivo do adversário é para dizer se ele era
  • 19:21 - 19:25
    dada a criptografia do texto simples esquerda ou direita o texto sem formatação. E como
  • 19:25 - 19:29
    antes de o adversário começa a repetir essas consultas e ele pode emitir tantas, como muitos
  • 19:29 - 19:34
    consultas como ele quer, nós normalmente vamos q denotar o número de consultas que o
  • 19:34 - 19:38
    questões adversário. Agora, a única restrição de curso, que é crucial, é que
  • 19:38 - 19:42
    embora o adversário começa a escolher os nonces, ele está restrito a escolher
  • 19:42 - 19:47
    nonces distintas. A razão por que obrigá-lo a escolher nonces distintos é porque
  • 19:47 - 19:51
    essa é a exigência na prática. Mesmo que os tolos adversário Alice em
  • 19:51 - 19:55
    criptografar várias mensagens para ele, Alice nunca vai usar o mesmo nonce
  • 19:55 - 19:59
    novamente. Como resultado, o adversário nunca verá mensagens criptografadas usando o
  • 19:59 - 20:04
    nonce mesma e, portanto, mesmo no jogo, é necessário que todos nonce ser
  • 20:04 - 20:08
    distinta. E então, como sempre dizemos que o sistema é uma criptografia baseada em nonce
  • 20:08 - 20:13
    sistema que é, semanticamente seguro sob um ataque de texto simples escolhido se o adversário
  • 20:13 - 20:18
    não consegue distinguir de zero experimento onde ele deu criptografias de esquerda
  • 20:18 - 20:23
    mensagens de um experimento onde ele deu criptografias das mensagens certas.
  • 20:23 - 20:27
    Então, vamos olhar um exemplo de um sistema de criptografia baseado em nonce. Como antes, nós
  • 20:27 - 20:32
    ter um seguro que leva PRF entradas no espaço R nonce e cordas saídas no
  • 20:32 - 20:37
    mensagem espaço M. Agora, quando uma nova chave é escolhido, vamos redefinir o nosso contador de R
  • 20:37 - 20:41
    para ser zero. E agora vamos criptografar a mensagem M particular, o que vamos fazer é
  • 20:41 - 20:45
    vamos incrementar o nosso contador de R, e depois criptografar a mensagem M utilizando o
  • 20:45 - 20:49
    função pseudo aplicada a este valor R. E, como antes, o texto cifra é
  • 20:49 - 20:54
    vai conter dois componentes, o nosso valor actual do contador e, em seguida, os
  • 20:54 - 20:59
    uma criptografia pad hora da mensagem M. E por isso a minha pergunta é se este
  • 20:59 - 21:03
    é um sistema seguro de criptografia não-espaço. Portanto, a resposta é sim, como antes, mas apenas
  • 21:03 - 21:08
    se o espaço a nuance é grande o suficiente. Assim como incrementar a R balcão, nunca será
  • 21:08 - 21:13
    ciclo volta a zero de modo que as nuances sempre, sempre ser único. Argumentamos
  • 21:13 - 21:18
    segurança da mesma maneira como antes. Porque a PRF é segura, sabemos que este
  • 21:18 - 21:23
    sistema de criptografia é indistinguível de usar uma função verdadeiramente aleatório. Em
  • 21:23 - 21:27
    outras palavras, se aplicarmos uma função verdadeiramente aleatório para o balcão e XOR a
  • 21:27 - 21:33
    resultados com texto simples, o M. Mas agora desde o R nuance nunca se repete, a cada
  • 21:33 - 21:37
    hora de calcular essa F de R, nós conseguiremos um uniforme verdadeiramente aleatório e independente
  • 21:37 - 21:43
    corda de modo que nós estamos realmente criptografar todas as mensagens usando o teclado de uma vez. E
  • 21:43 - 21:48
    como resultado, todos o adversário começa a ver em ambos os experimentos são basicamente um
  • 21:48 - 21:53
    par de seqüências aleatórias. Assim, ambos zero do experimento e experiência de um a
  • 21:53 - 21:57
    adversário se é para ver exatamente a mesma distribuição, ou seja, as respostas a todos
  • 21:57 - 22:02
    este escolhidos consultas de texto simples são apenas pares de cordas que são apenas uniformemente
  • 22:02 - 22:07
    distribuído e isso é basicamente o mesmo em zero experimentar e experimentar um e,
  • 22:07 - 22:12
    , portanto, o atacante não consegue distinguir os dois experimentos. E desde que ele não pode
  • 22:12 - 22:16
    ganhar o jogo semântico de segurança com uma função verdadeiramente aleatório que ele, também, não pode ganhar
  • 22:16 - 22:21
    o jogo de segurança semântica com a PRF seguro, e, por conseguinte, o sistema é
  • 22:21 - 22:25
    seguro. Portanto, agora entendemos o que significa para um sistema simétrico para ser seguro quando
  • 22:25 - 22:30
    as chaves usadas para criptografar mensagens múltiplas a exigência é que seja seguro e sob
  • 22:30 - 22:35
    um plano de ataque escolhida. E nós dissemos que, basicamente, a única maneira de ser seguro em
  • 22:35 - 22:39
    um ataque de texto simples ou é escolhido para usar a criptografia randomizado, ou de usar, usar
  • 22:39 - 22:43
    criptografia nonce espaço onde nunca o nonce repete. E em seguida, na
  • 22:43 - 22:48
    próximos dois segmentos, nós vamos construir dois sistemas de criptografia clássicos que são seguros
  • 22:48 - 22:50
    quando a chave é usada várias vezes.
Title:
Segurança para muitos em tempo chave (23 min)
Video Language:
English
erickshowplay added a translation

Portuguese, Brazilian subtitles

Revisions