Stack Exchange Network

Stack Exchange network consists of 175 Q&A communities including Stack Overflow, the largest, most trusted online community for developers to learn, share their knowledge, and build their careers.

Visit Stack Exchange

Questions tagged [protocol-design]

Design of cryptographic protocols, i.e. ways of using algorithms (primitives) to achieve one or more security goals like integrity, confidentiality, authenticity (maybe together with non-security-related goals). If you ask about a specific protocol, tag with its name instead (or additionally, if about its design).

5
votes
2answers
104 views

Protocol to identify zone of potential agreement without revealing reservation prices and having to trust third parties?

A wants to buy a company from B. Before A and B enter negotiations, they want to make sure that there actually is a zone of potential agreement. Obviously, they don't want to communicate their ...
5
votes
1answer
472 views

Zero knowledge proof of shared secret

Alice holds a secret $a \in X$. Bob holds a secret $b \in X$. Is there a protocol that lets them compute $f(a, b) = \begin{cases} 1 & \textrm{if } a = b \\ 0 & \textrm{else} \end{cases}$ If $...
3
votes
1answer
209 views

Encrypt-then-authenticate variant used in IPsec

I am trying to understand the variant of Encrypt-then-Authenticate (EtA) that is used in IPsec. For this I have looked at this chapter. What I got so far is that the integrity and confidentiality ...
3
votes
1answer
997 views

end-to-end encrypted chat app with symmetric + public key encryption, TLS and cert pinning

A big drawback of end-to-end encrypted messaging services is that, as soon as you lose your device, you lose all your messages. Your private key is gone after all. I was wondering though, wouldn't it ...
8
votes
4answers
840 views

Exchanging encrypted messages, and decrypting without a public key?

I know very little about encryption, but I was hoping someone could shed light on this cipher text exchange scheme I worked out in my head this morning: Bob wants to send Alice a message but doesn't ...
3
votes
2answers
117 views

Problem with this authentication protocol

Consider such authentication protocol: Alice and Bob share a key. Bob sends alice a nonce. Alice encrypts it with shared key and sends to bob. Now assume Alice was successfully authenticated. But ...
1
vote
1answer
151 views

What libraries do people use to implement and evaluate cryptography protocols? [closed]

I want to implement this credential system: “Anonymous Credentials Light” (PDF). The implementation would involve some zero-knowledge proof and some exponentiation. For some basic group computations ...
48
votes
3answers
11k views

Signal vs Telegram in terms of protocols?

Some time ago, the question was asked in chat, why MTProto (Telegram's protocol) is supposedly worse than Axolotl (Signal's protocol) as both protocols have been the inventions of their respective ...
6
votes
1answer
436 views

Zero-Knowledge Proof of a polynomial

I have two secret values $L_1$, $L_2$, and two Pedersen commitments $C_1 = C(L_1)$, $C_2=C(L_2)$. The commitments $C_1$, $C_2$ are public. Given a challenge $c$, I want to output $d = c*L_1+L_2$ and ...
4
votes
1answer
501 views

Compromise between HMAC and Digital Signature, by encrypting and sending secret key?

For achieving stateless authentication tokens (like JWT), is there a compromise between the performance of HMAC, and public key distribution of Digital Signature? Scenario: Sender is a centralized ...
7
votes
2answers
328 views

Efficient way to confirm identity

I am working on a multiplayer game. I have a central server which handles all data transmission and coordinates all games. Clients which involved in a single session send requests to do actions to ...
2
votes
2answers
3k views

Authenticated Encryption of UDP packets

I am working on a UDP based file transfer protocol. Congestion Control, Resending of packages and other UDP challenges are dealt with - speedtests shows that the protocol is up to 10 times faster than ...
6
votes
2answers
144 views

Data Leakage and Data Switching

I have two secret values $a$ and $b$ (i.e. they are arbitrary values). I mask them as follow: $v_1=r_1a+r_2$ $v_2=r_1(b-a)$ where $r_1$ and $r_2$ are uniformly random values. I send $v_1$ and $v_2$ ...
3
votes
2answers
160 views

Security analysis of this one time password based scheme for copy protection

Imagine such protocol. Client and server initially share secret K[0]. When client wants to contact server she sends server K[0] and her ID. Server accepts request, and generated new random K[1] and ...
5
votes
1answer
100 views

Information theoretical security of an inefficient Shamir based access structure

I have studied Sharmir's scheme as well as the multiple assignment scheme proposed by M. Ito. My question is if anyone can tell me if the following scheme is theoretically secure: Terms: P = set of ...
7
votes
1answer
252 views

Non-deniability of data sent over TLS

Andy is going to connect to a server Selma over TLS. Later, Andy would like to be able to publish everything (the ciphertexts, the plaintexts, all his keys) and prove to a mediator what data he sent ...
8
votes
1answer
327 views

Santa Claus' secret permutation

This December, $N$ friends play secret santa: they select a random permutation $\sigma$ of $N$ (without fixed point). For Santa Claus, everyone has to bring a gift to the next person in the ...
1
vote
3answers
160 views

RSA message integrity

I wish to send some small data that RSA alone can encrypt, and I send a shared secret along with it. ...
2
votes
1answer
112 views

Message security and also program copy detection

Imagine I have client and server running on different machines, each as a separate software. I want to ensure: message authenticity, integrity and confidentiality at least of messages coming from ...
2
votes
1answer
182 views

Authentication protocol which detects client impersonation from another machine

Consider following authentication protocol. Client ClientA knows some initial secret KeyA shared with server. Client also knows IP of legitimate server. Now when client wants to establish connection ...
1
vote
0answers
50 views

cumulative secrets

Imagine a server with an authentication scheme that utilizes an element of randomness in new sessions (i.e. one that uses the secure remote password protocol). At the end of a successful ...
2
votes
1answer
1k views

Perfect Forward Secrecy in PGP/asynchronous email

Looking at the RFC for PGP email/asynchronous chat with PFS here https://tools.ietf.org/html/draft-brown-pgp-pfs-03 can anyone tell me why the following scheme is no good? Alice and Bob retrieve each ...
2
votes
0answers
60 views

How to force an adversary to call a certain oracle?

Consider there is a protocol in real world, which uses a random oracle $\mathcal{H}$. In the ideal world, after the calling of $\mathcal{H}$ by some parties, intuitively I want the simulator gets some ...
3
votes
1answer
51 views

May I use Random Oracle for Inversed Look-up?

Consider there is a protocol in real world calling a random oracle $\mathcal{H}$ for a priavte input $k$. Then in the ideal world, after the calling of $r \leftarrow \mathcal{H}(k)$ by a honest party, ...
6
votes
1answer
147 views

How to use a stream cipher to sign a message?

Are there known constructions which allow to sign a message M (let's say it will be sent as clear text) using a stream cipher C and a symmetric secret key K? So, we have M, C, K and we want to send M|...
3
votes
1answer
139 views

Improving security of (authentication) protocol

I have a basic protocol which tries to authenticate messages going from client to server. Basically it is like this: Imagine I want to send message M to server. Client computes a MAC over the message....
2
votes
1answer
141 views

Is this ECC based messaging method secure?

I developing an encrypted messaging for ZeroNet (aP2P file-based network, website: zeronet.io) and would like to have some guidelines if any of this could work. My first idea: In ZeroNet every user ...
4
votes
1answer
301 views

Consequence of a change on the Guillou-Quisquater Protocol

In the Guillou-Quisquater Protocol, the prover convinces the verifier that he knows an $e$-th root of an element $y \in \mathbb{Z}^*_n$ ($p, q, e$ are primes, $n = pq$ and $e$ is coprime with $\varphi(...
5
votes
1answer
121 views

Do low-entropy fingerprints actually make any sense?

I'm thinking of ZRTP and OTR in particular here. From my understanding, after a Diffie-Hellman session is initiated, the shared secret is then hashed into a 4-digit number, which the two parties can ...
3
votes
3answers
4k views

Prevent replay attack without storage

I am designing a set of low-power sensing motes. Each mote will communicate to a central base over RF. I want the mote to be able to authenticate itself with the base, and send its data without being ...
2
votes
3answers
162 views

Three party coin flipping protocol with only 2 active participants

Is there a coin flipping protocol where: Alice, Bob and Carol don't trust each other, and The coin is flipped only by Alice and Bob, and The result must be trusted by all three participants.
16
votes
1answer
700 views

Salary Negotiation Problem

Imagine Alice is applying for a new job. Alice has an idea of the minimum salary that she is willing to accept—let's call this value A. Bob, the hiring manager for ...
5
votes
3answers
1k views

Is it usual for a signed message to contain the public key of the signer?

In protocols/systems which use ECDSA, is it common for the message to contain the public key of the message signer? If not, how do recipients know that the message has been signed by the correct ...
3
votes
1answer
85 views

Forcing participants to be honest in Secure Multiparty Communication

Alice and Bob engage to compute a secure function f(a,b) where a and b must be present in a ...
4
votes
1answer
85 views

Is it wise to use HOTP (raw bytes) as a key for HMAC?

Assume I have client and server applications with a shared master secret KEY_SECRET already in place. Also assume that the client and server have an implicit shared ...
3
votes
1answer
85 views

Is it possible and safe to use SAKKE for signing/verification, rather than for encryption?

Is it safe to use the Sakai–Kasahara key encryption algorithm (SAKKE) for signing/verification, rather than for encryption? (Example at bitbucket.org) In particular, I want many Bobs to be able to ...
2
votes
2answers
894 views

How do you communicate the hash function used with RSA signing?

When it comes to RSA signing, I understand why you need to hash the data before signing it, but don't you need to communicate what hash algorithm you use to whoever will need to verify the signature? ...
1
vote
0answers
629 views

Simplest way for strong cryptography in chat [closed]

I am a beginner in cryptography and I am interested for several weeks on this for my chat application. Basically, it is a centralized model. All messages are stored and potentially visible by ...
12
votes
3answers
292 views

Is there a way to optimize a linear scan while preserving anonymity?

I've been wrestling with a problem, and I was hoping if someone else had a bright idea. Here's the problem: I have two sides, Alice and Bob. Alice has a single high entropy string $A$, and Bob has a ...
5
votes
1answer
158 views

Coin flipping with limited communication between participants

Alice and Bob want to play a coin flipping game. Alice wins if the coin flips head. They choose to trust a independent third party that generates a random beacon (such as NIST). There is no ...
3
votes
2answers
77 views

Re-sending captured encrypted data

Let’s assume Bob is some algorithmic stock trading machine. Bob takes commands from Alice, who sends messages to Bob. For example: Alice could be sending a message to Bob to stop trading. But if ...
4
votes
1answer
360 views

What is the lightweight key exchange protocol of choice?

Assume I have to implement a secure channel protocol by myself. Assume further that for some obscure reasons (library restrictions?) I can't use any of the pre-made libraries for SSH, TLS and such. ...
2
votes
1answer
66 views

Design for file transfers to a new party

I'm pondering a problem of how to enable transfers of files from clients to people that does not yet have an application/account/keys yet. Here's my current thought for Alice wanting to send Bob ...
4
votes
2answers
1k views

HMAC key storage for a web app?

If one is going to use an HMAC, I.E: http://php.net/manual/en/function.hash-hmac.php, where exactly are they storing the key? Without some sort of secure storage (i.e not in a local file or code), I ...
4
votes
1answer
87 views

Is there a cryptographic protocol that let's me prove someone has a large binary?

I'm working on a system that has a P2P component. When an individual downloads a binary and decides to mirror it, they advertise themselves in a providers set. The binaries can range from 1-1000MB. I ...
1
vote
2answers
1k views

PKCS#7 message content

I am using a vendor library that signs a text producing a PKCS#7 message. I'm not sure of the content of this message. Does a pkcs#7 message have to contain the signed message, the certificate, the ...
2
votes
1answer
238 views

Is succinct verification of an arbitrary data transformation theoretically possible? Is it feasible? How?

Given input string S, and transformation (i.e. computer program) T, is it possible to provide a succinct proof that another binary string S' is identical to the output T(S)? By "succinct", I ...
4
votes
1answer
1k views

Forward-secure static-ephemeral ECDH key agreement protocol

The question is whether the following simple key agreement protocol design has good security properties, and how it can or should be improved. Assumptions Alice is a persistent entity with a static ...
2
votes
2answers
251 views

Authenticating code securely and generating a certificate

I'm working on a product with strong security. Essentially there is an App, downloaded from the iTunes App Store. When the App starts up, it generates a strong RSA keypair and stores it in the ...
3
votes
0answers
87 views

Authenticate encrypted seed for KEM + AEAD hybrid cryptosystem

Say I want to encrypt something using RSA / KEM and an authenticated cipher. I encrypt using the following scheme: generate random seed z using ...