Resultado esperado (Ejemplo CNG)

Actualización: Julio de 2008

El ejemplo de comunicación segura de criptografía de próxima generación (CNG) se compone de tres aplicaciones, cada una de las cuales genera una gran cantidad de resultados de texto. Además, el ejemplo incluye cinco versiones que producen un resultado diferente. Para obtener más información sobre estas aplicaciones y versiones, vea Ejemplo de comunicación segura CNG e Información general sobre el código fuente.

Este tema contiene las siguientes secciones, en las que se muestran una selección de fragmentos de los resultados:

  • Alice, menú de opciones

  • Versiones 1-5 sin interceptación, modo no detallado

  • Versión 3 con interceptación, modo no detallado

  • Versiones 4-5 con interceptación, modo detallado

En las secciones de resultados, un carácter de dos puntos seguido del signo "mayor que" (:>) representa un símbolo del sistema. Los puntos suspensivos (...) indican que se han omitido líneas del resultado porque no han cambiado respecto al bloque de resultados anterior.

En la ilustración siguiente se muestran las tres ventanas de la consola al comienzo de una sesión:

Alice, menú de opciones

En los resultados siguientes se muestra el menú de opciones que Alice muestra al comienzo de la sesión.

       Cryptography Next Generation Secure Communication Example
------------------------------------------------------------------
Please select a security model:
1 = Plaintext only.
2 = Encrypt messages.
3 = Encrypt messages, use public key to digitally sign messages.
4 = Encrypt messages, use private key to digitally sign messages.
5 = Encrypt messages, use private key to digitally sign messages
    and cryptographic keys.  Causes Abort on security failures.
x = Exit.

:> 3
Include Mallory? y/n
:> y
Verbose output mode? y/n
:> y

Versiones 1-5 sin interceptación, modo no detallado

En esta sección se muestran los fragmentos de los resultados generados por Alice.exe, versiones 1-5, cuando se elige un modo no detallado y se desactiva la interceptación de Mallory.

Alice, versión 1

En los resultados siguientes se muestra lo que pasa cuando Alice y Bob se dedican a intercambiarse mensajes básicos sin cifrado, firmas digitales ni interceptación.

       Cryptography Next Generation Secure Communication Example
Security Version: 1  Mode: Regular   Mallory: no   Signatures: no
-----------------------------------------------------------------------
Hi, I'm Alice Green. My sales associate is Bob White.
I need to send him a customer order right now!

:> Hi Bob. I have a new customer contact.
   Hi Alice. That is good news. Please send it to me.
:> Here it is: Coho Winery, 111 AnyStreet, Chicago
   Thanks, I'll arrange to meet him.
...

Alice, versión 2

En los resultados siguientes se muestra lo que ocurre cuando Alice y Bob utilizan claves criptográficas para cifrar sus mensajes.

       Cryptography Next Generation Secure Communication Example
Security Version: 2   Mode: Regular   Mallory: no   Signatures: no
-----------------------------------------------------------------------
...
-----------------------------------------------------------------------
Now Bob will publicly send me his public cryptographic key:
Listening...
-----------------------------------------------------------------------
Now that our keys have been exchanged,
we can have an encrypted conversation:
-----------------------------------------------------------------------
:> Hi Bob. I have a new customer contact.
   Hi Alice. That is good news. Please send it to me.
:> Here it is: Coho Winery, 111 AnyStreet, Chicago
   Thanks, I'll arrange to meet him.
-----------------------------------------------------------------------
...

Alice, versiones 3-5

En los resultados siguientes se muestra lo que ocurre cuando Alice y Bob firman sus claves y mensajes con firmas digitales. Dado que el marcador fMallory es false (es decir, no hay interceptación), el resultado es prácticamente igual que el de la sección anterior.

       Cryptography Next Generation Secure Communication Example
Security Version: 3   Mode: Regular   Mallory: no   Signatures: yes
-----------------------------------------------------------------------
Hi, I'm Alice Green. My sales associate is Bob White.
I need to send him a customer order right now!
First, I will send Bob a digital signature key over a public channel.
-----------------------------------------------------------------------
Now we will exchange our public cryptographic
keys through a public channel.
First, I'll send Bob my key.
Sending...
-----------------------------------------------------------------------
Now Bob will publicly send me his public cryptographic key:
Listening...
-----------------------------------------------------------------------
Now that our keys have been exchanged,
we can have an encrypted conversation:
-----------------------------------------------------------------------
...

Versión 3 con interceptación, modo no detallado

Esta versión muestra lo que pasa cuando el marcador fMallory se establece en true. Observe detenidamente la dirección que Bob recibe de Alice. Compárela con la dirección que Bob recibió en la sección anterior. Como puede ver, Mallory intercepta la dirección y la modifica ligeramente.

Mallory es capaz de interceptar los mensajes aunque Alice y Bob envían una firma digital con cada mensaje. Esto se debe a que envían la clave de firma digital a través del mismo canal inseguro que la clave de cifrado criptográfica. Mallory puede interceptar las dos claves. Utiliza las claves criptográficas para cifrar sus mensajes y utiliza la clave de firma digital para firmar los mensajes. Dado que Alice y Bob están utilizando las mismas claves, nadie sospecha nada.

Bob, versión 3

El resultado siguiente procede de la ventana de consola de Bob. Muestra los mensajes que Bob recibe de Mallory.

       Cryptography Next Generation Secure Communication Example
Security Version: 3   Mode: Regular   Mallory: yes   Signatures: yes
----------------------------------------------------------------------
Hi, I'm Bob White: My sales associate is Alice Green.
I think she has a new customer contact for me!
First, Alice will publicly send me a digital signature key.
-----------------------------------------------------------------------
Now we will exchange our public cryptographic
keys through a public channel.
First, Alice will send me her key.
Listening...
-----------------------------------------------------------------------
Next, I will send my public cryptographic key to Alice:
Sending...
-----------------------------------------------------------------------
Now that our keys have been exchanged,
we can have an encrypted conversation:
-----------------------------------------------------------------------
   Hi Bob. I have a new customer contact.
:> Hi Alice. That is good news. Please send it to me.
   Here it is: Coho Winery, 111 AnyStreet, Chicago
:> Thanks, I'll arrange to meet him.
-----------------------------------------------------------------------...

Mallory, versión 3

El resultado siguiente procede de la ventana de consola de Mallory. Muestra cómo Mallory intercepta y modifica los mensajes de Alice y Bob.

       Cryptography Next Generation Secure Communication Example
Security Version: 2   Mode: Regular   Mallory: yes   Signatures: no
-----------------------------------------------------------------------
Hi, I'm Mallory, the man in the middle.
I wonder what Alice and Bob are talking about.
I think I'll listen in.
-----------------------------------------------------------------------
Alice and Bob are going to exchange their
public cryptographic keys through a public channel.
First, Alice will send Bob her key.

Good.  I just intercepted Alice's public key:
Next, I will send my MalloryAlice public cryptographic key to Alice:

Sending...
Next, I will send my MalloryBob public cryptographic key to Bob:

Sending...
Now I will receive Bob's public key:
Good.  I just intercepted Bob's public key:
-----------------------------------------------------------------------
Now that they have exchanged their keys,
they can have a secure conversation:
-----------------------------------------------------------------------
From Alice:
   Hi Bob. I have a new customer contact.
To Bob:
:> Hi Bob. I have a new customer contact.
From Bob:
   Hi Alice. That is good news. Please send it to me.
To Alice:
:> Hi Alice. That is good news. Please send it to me.
From Alice:
   Here it is: Coho Winery, 111 AnyStreet, Chicago
To Bob:
:> Coho Winery, OneEleven EveryStreet, Chicago
From Bob:
   Thanks, I'll arrange to meet him.
To Alice:
:> I think the address is wrong, but I'll keep trying.
-----------------------------------------------------------------------
I am so clever!
Here is what I received: Coho Winery, 111 AnyStreet, Chicago
and here is what I sent: Coho Winery, OneEleven EveryStreet, Chicago

They will never catch me! 
-----------------------------------------------------------------------
...

Versiones 4-5 con interceptación, modo detallado

En las versiones 4 y 5, Alice le envía a Bob una clave de firma digital privada que los dos utilizan para firmar sus mensajes. Mallory no conoce el canal privado que Alice utiliza para enviar la clave a Bob. Por tanto, sigue utilizando la clave de firma digital que interceptó en el canal público.

Bob, versión 4

En esta sección se muestra el resultado completo y detallado. Puede ver la clave de firma digital cifrada, la clave de cifrado de mensajes y los mensajes cifrados. Esta versión también contiene advertencias de seguridad que se emiten cuando se detecta una firma digital no comprobada.

       Cryptography Next Generation Secure Communication Example
Security Version: 4   Mode: Verbose   Mallory: yes   Signatures: yes
-----------------------------------------------------------------------
Hi, I'm Bob White: My sales associate is Alice Green.
I think she has a new customer contact for me!

First, Alice will publicly send me a digital signature key.
Here it is:

☻???x???♥?? ♦ ?ie??t?VD?A?Y??▬☻§?Ed►??H?Hm2G¶?E??N?!`?☺¶^[←?↨?▬d? K9zdnJ
?☻?:↓?☺ ?L?K???C+♦??c?*7↓l?§??-??`L?h↓?GF?=???????????↔??&1|☺?????%?_???
?

Now Alice privately sent me a digital signature key. I will use it instead.
Here it is:

0??☻☺ 0►♠*?H?=☻☺♠♣+?♦ #♦??0??☻☺☺♦B☺??t
???♥?? ♦☺?V??)???s<m{sGM!?;~??d??Oc`♦?j??⌂§?d??b?? ????????,?♠  ??4?]???
.??☺DN)3?=T↨??p>M???X?B????50???? ? ?E§?B?nr?z?/r??U????7,⌂?n?SL??,+
-----------------------------------------------------------------------
Now we will exchange our public cryptographic
keys through a public channel.
First, Alice will send me her key.

Listening...
 ========  SECURITY ERROR!!===========
Cryptographic Key: Failure verifying digital signature.


Here it is: an ECDH public KeyBlob
encoded within an XML string:

<ECDHKeyValue xmlns="http://www.w3.org/2001/04/xmldsig-more#">
  <DomainParameters>
    <NamedCurve URN="urn:oid:1.3.132.0.35" />
  </DomainParameters>
  <PublicKey>
    <X Value="5810718142462989354994453278603666484069278865008031317447
037792465942980799716553452148826647328907514445799324904361787703912513
195249832409677600954844765" />
    <Y Value="3280794663882281563639053942916365892460715799983953322007
508591453180081202861463948160922147015703385178443338980028430040655324
927942630539423460021361227" />
  </PublicKey>
</ECDHKeyValue>
-----------------------------------------------------------------------
Next, I will send my public cryptographic key to Alice:

Sending...
Here it is: an ECDH public KeyBlob
encoded within an XML string:

<ECDHKeyValue xmlns="http://www.w3.org/2001/04/xmldsig-more#">
  <DomainParameters>
    <NamedCurve URN="urn:oid:1.3.132.0.35" />
  </DomainParameters>
  <PublicKey>
    <X Value="2455055322326895878650801953827546401118074905382497016837
137236585732889354895381530732942808710858667195863286496064074787137035
924365385948877294503335106" />
    <Y Value="1218921928274644208762495755994900948182290688858431853778
446672036473174952224569387259723200925573098776195363817761522302928910
53555717400648130000558239" />
  </PublicKey>
</ECDHKeyValue>
-----------------------------------------------------------------------
Now that our keys have been exchanged,
we can have an encrypted conversation:
-----------------------------------------------------------------------
   Incoming message:

??(??m?⌂4i?JOgion vector:  ?

   Ciphertext:
??∟↓[\▼?3♦Z GTGa>?&??,?x3f1Sh7L↓n?dc?I?A??\?P?l⌂X⌂@?V#??G??(O???6?♦☻)?
PJ???@{N

   Signature:
?QF????¶☻       ~?YA?????oJ?7??{◄?oVg???L?→←3?⌂§?
Y???Ca??S?Rl?v8(?       ? ????I0 ?♦?|???L9|????????
??♦&)??gm??28?!??L?
U?, ???N??@4??2§S

   Incoming decoded message:

   Hi Bob. I have a new customer contact.
SECURITY WARNING! Received signature did not verify
-----------------------------------------------------------------------

:> Hi Alice. That is good news. Please send it to me.
-----------------------------------------------------------------------
   Incoming message:

   Initialization vector:  ??4??♂??§??♫:(??

   Ciphertext:
?m?????y??x'~?<⌂yZ???G??Q????§????↕G??☼M?(?y[§▼→a?f%L??????←    ????y???
&??z ?p?????[?p

   Signature:
 ???7[?ju???4??]???F?l?'-A??@?l??‼?¶F"k???g??♀{??S??????▲?t.?;???↕▬?u?♠♀
?!%}?????∟?☻?*?a?"◄o??▬??,?w??F▲k??Y∟?▲???j??T???↕♫2???

   Incoming decoded message:

   Coho Winery, OneEleven EveryStreet, Chicago
SECURITY WARNING! Received signature did not verify
-----------------------------------------------------------------------
:> Thanks, I'll arrange to meet him.
-----------------------------------------------------------------------

Bob, versión 5

Como en la versión anterior, la versión 5 utiliza la clave de firma digital privada para firmar la clave de cifrado de mensajes. Además, esta versión finaliza la sesión en cuanto se produce un error de seguridad.

       Cryptography Next Generation Secure Communication Example
Security Version: 5   Mode: Verbose   Mallory: False   Sign keys: true
-----------------------------------------------------------------------
Hi, I'm Bob White: My sales associate is Alice Green.
I think she has a new customer contact for me!

First, Alice will publicly send me a digital signature key.
Here it is:
...
Now Alice will privately sent me a digital signature key. I will use it 
instead.
Here it is:
...
-----------------------------------------------------------------------
Now we will exchange our public cryptographic
keys through a public channel
First, Alice will send me her key.

Listening...
========  SECURITY ERROR!===========
Cryptographic Key: Failure verifying digital signature.
Contact your security administrator.
TERMINATING SESSION

Vea también

Conceptos

Ejemplo de comunicación segura de criptografía de próxima generación (CNG)

Información general sobre criptografía

Historial de cambios

Fecha

Historial

Motivo

Julio de 2008

Se ha agregado un tema.

Mejora de la información.