Skip to main content
describe how an attacker could break smp
Source Link
forest
  • 16.1k
  • 2
  • 51
  • 106

This is called the Socialist Millionaire Problem. A solution for it exists, as published in this paper.

According to Wikipedia:

It is often used as a cryptographic protocol that allows two parties to verify the identity of the remote party through the use of a shared secret, avoiding a man-in-the-middle attack without the inconvenience of manually comparing public key fingerprints through an outside channel. In effect, a relatively weak password/passphrase in natural language can be used.

The protocol allows two parties to know whether or not they both share the same secret, such as a password, without transmitting it. If the other side, which may be an MITM attacker, is not able to prove that it has the same secret, then the session can be terminated before sending any sensitive information. Neither side learns any information about the secret in the process, other than the fact that the shared secrets did not match. If it succeeds and they do match, then they're MITM-free.

This technique is used in the OTR protocol. Unauthenticated (MITMDiffie-vulnerable)Hellman key exchange is done first, after which SMP is performed within the encrypted channel. Further communication is refused ifdenied unless the other side cannotcan prove that it shares the same secret and thus is not an MITM attacker. In order to successfully perform an MITM attack, the attacker would need to either correctly guess the shared secret in its entirety by performing multiple connection attempts and re-trying on each failure without alerting anyone to the attack, or solve the discrete logarithm problem (DLP) that underlies Diffie-Hellman security, which is currently thought to be hard when correct parameters are chosen.

A simplified explanation of the protocol and its properties as used in OTR is available here.

This is called the Socialist Millionaire Problem. A solution for it exists, as published in this paper.

According to Wikipedia:

It is often used as a cryptographic protocol that allows two parties to verify the identity of the remote party through the use of a shared secret, avoiding a man-in-the-middle attack without the inconvenience of manually comparing public key fingerprints through an outside channel. In effect, a relatively weak password/passphrase in natural language can be used.

The protocol allows two parties to know whether or not they both share the same secret, such as a password, without transmitting it. If the other side, which may be an MITM attacker, is not able to prove that it has the same secret, then the session can be terminated before sending any sensitive information. Neither side learns any information about the secret in the process, other than the fact that the shared secrets did not match. If it succeeds and they do match, then they're MITM-free.

This technique is used in the OTR protocol. Unauthenticated (MITM-vulnerable) key exchange is done first, after which SMP is performed within the encrypted channel. Further communication is refused if the other side cannot prove that it shares the same secret and thus is not an attacker.

This is called the Socialist Millionaire Problem. A solution for it exists, as published in this paper.

According to Wikipedia:

It is often used as a cryptographic protocol that allows two parties to verify the identity of the remote party through the use of a shared secret, avoiding a man-in-the-middle attack without the inconvenience of manually comparing public key fingerprints through an outside channel. In effect, a relatively weak password/passphrase in natural language can be used.

The protocol allows two parties to know whether or not they both share the same secret, such as a password, without transmitting it. If the other side, which may be an MITM attacker, is not able to prove that it has the same secret, then the session can be terminated before sending any sensitive information. Neither side learns any information about the secret in the process, other than the fact that the shared secrets did not match. If it succeeds and they do match, then they're MITM-free.

This technique is used in the OTR protocol. Unauthenticated Diffie-Hellman key exchange is done first, after which SMP is performed within the encrypted channel. Further communication is denied unless the other side can prove that it shares the same secret and thus is not an MITM attacker. In order to successfully perform an MITM attack, the attacker would need to either correctly guess the shared secret in its entirety by performing multiple connection attempts and re-trying on each failure without alerting anyone to the attack, or solve the discrete logarithm problem (DLP) that underlies Diffie-Hellman security, which is currently thought to be hard when correct parameters are chosen.

A simplified explanation of the protocol and its properties as used in OTR is available here.

link to otrv3
Source Link
forest
  • 16.1k
  • 2
  • 51
  • 106

This is called the Socialist Millionaire Problem. A solution for it exists, as published in this paper.

According to Wikipedia:

It is often used as a cryptographic protocol that allows two parties to verify the identity of the remote party through the use of a shared secret, avoiding a man-in-the-middle attack without the inconvenience of manually comparing public key fingerprints through an outside channel. In effect, a relatively weak password/passphrase in natural language can be used.

The protocol allows two parties to know whether or not they both share the same secret, such as a password, without letting the other side know the secret. All one side knows is whether or not the other side knows the same secrettransmitting it. If the other side, which may be an MITM attacker, is not able to prove that it has the same secret, then the session can be terminated before performing traditional key exchange using, for example, elliptic curve Diffie-Hellman (ECDH)sending any sensitive information. Neither side gatherslearns any information about the secret during this exchangein the process, other than the fact that theythe shared secrets did not match. If it succeeds and they do match, then they're MITM-free.

This technique is used in the OTR protocol. Unauthenticated (MITM-vulnerable) key exchange is done first, after which SMP is performed within the encrypted channel. Further communication is refused if the other side cannot prove that it shares the same secret and thus is not an attacker.

This is called the Socialist Millionaire Problem. A solution for it exists, as published in this paper.

According to Wikipedia:

It is often used as a cryptographic protocol that allows two parties to verify the identity of the remote party through the use of a shared secret, avoiding a man-in-the-middle attack without the inconvenience of manually comparing public key fingerprints through an outside channel. In effect, a relatively weak password/passphrase in natural language can be used.

The protocol allows two parties to know whether or not they both share the same secret, such as a password, without letting the other side know the secret. All one side knows is whether or not the other side knows the same secret. If the other side, which may be an MITM attacker, is not able to prove that it has the same secret, then the session can be terminated before performing traditional key exchange using, for example, elliptic curve Diffie-Hellman (ECDH). Neither side gathers any information about the secret during this exchange, other than the fact that they did not match.

This is called the Socialist Millionaire Problem. A solution for it exists, as published in this paper.

According to Wikipedia:

It is often used as a cryptographic protocol that allows two parties to verify the identity of the remote party through the use of a shared secret, avoiding a man-in-the-middle attack without the inconvenience of manually comparing public key fingerprints through an outside channel. In effect, a relatively weak password/passphrase in natural language can be used.

The protocol allows two parties to know whether or not they both share the same secret, such as a password, without transmitting it. If the other side, which may be an MITM attacker, is not able to prove that it has the same secret, then the session can be terminated before sending any sensitive information. Neither side learns any information about the secret in the process, other than the fact that the shared secrets did not match. If it succeeds and they do match, then they're MITM-free.

This technique is used in the OTR protocol. Unauthenticated (MITM-vulnerable) key exchange is done first, after which SMP is performed within the encrypted channel. Further communication is refused if the other side cannot prove that it shares the same secret and thus is not an attacker.

restructured answer
Source Link
forest
  • 16.1k
  • 2
  • 51
  • 106

What you are looking forThis is a solution tocalled the Socialist Millionaire Problem. A solution for this has been found and publishedit exists, and is used in cryptographic protocols such as published in OTR to protect key exchange from an MITM attackerthis paper. From the

According to Wikipedia page on the problem, describing its cryptographic use:

It is often used as a cryptographic protocol that allows two parties to verify the identity of the remote party through the use of a shared secret, avoiding a man-in-the-middle attack without the inconvenience of manually comparing public key fingerprints through an outside channel. In effect, a relatively weak password/passphrase in natural language can be used.

The protocol allows two parties to know whether or not they both share the same secret, such as a password, without letting the other side know the secret. All one side knows is whether or not the other side knows the same secret. If the other side, which may be an MITM attacker, is not able to prove that it has the same secret, then the session can be terminated before performing traditional key exchange using, for example, elliptic curve Diffie-Hellman (ECDH). Neither side gathers any information about the secret during this exchange, other than the fact that they did not match.

What you are looking for is a solution to the Socialist Millionaire Problem. A solution for this has been found and published, and is used in cryptographic protocols such as OTR to protect key exchange from an MITM attacker. From the Wikipedia page on the problem, describing its cryptographic use:

It is often used as a cryptographic protocol that allows two parties to verify the identity of the remote party through the use of a shared secret, avoiding a man-in-the-middle attack without the inconvenience of manually comparing public key fingerprints through an outside channel. In effect, a relatively weak password/passphrase in natural language can be used.

This is called the Socialist Millionaire Problem. A solution for it exists, as published in this paper.

According to Wikipedia:

It is often used as a cryptographic protocol that allows two parties to verify the identity of the remote party through the use of a shared secret, avoiding a man-in-the-middle attack without the inconvenience of manually comparing public key fingerprints through an outside channel. In effect, a relatively weak password/passphrase in natural language can be used.

The protocol allows two parties to know whether or not they both share the same secret, such as a password, without letting the other side know the secret. All one side knows is whether or not the other side knows the same secret. If the other side, which may be an MITM attacker, is not able to prove that it has the same secret, then the session can be terminated before performing traditional key exchange using, for example, elliptic curve Diffie-Hellman (ECDH). Neither side gathers any information about the secret during this exchange, other than the fact that they did not match.

Source Link
forest
  • 16.1k
  • 2
  • 51
  • 106
Loading