How would one go about constructing such a cipher? Has it been done? Can it be done?
If you have a key which is at least as long as the message (and don't reuse the key to encrypt a second message), we know how to do that (and it isn't that hard). Other than that, no, we don't know how to do it; we don't even know that it can be done.
The closest we can ...
With this in mind, one would obviously want a cipher that is mathematically provable to be resistant to KPA.
Any scheme that has a message space larger than the key space and is unconditionally provably resistant against known-plaintext attacks while being efficiently computable immediately implies $P\neq NP$. As we don't know for sure whether $P\neq NP$ ...
The function to calculate a MAC takes a message and a key, and outputs a tag.
To verify a MAC, you want to take a message and a key, and output a boolean (true if verified, false if not) instead of a tag.
Thus, the two functions can't be the same, since they have two different type signatures. In C-like pseudocode
uint8_t* MAC(uint8_t key, uint8_t message...
Signing and signature verification are concepts related to public key cryptography.
In case of message authentication codes, there is a single secret key and one function:
T = MAC ( K, M )
T - tag
MAC - MAC function
K - secret key
M - message
Messages can be signed by either the client or the server and verified by the other, depending on the case. ...
A third possible reason one might do this is to allow quick erasure.
Suppose you want to securely delete Text1, that is, make sure that no one, not you, not a hacker, not the TLA that gains access to the computer, can possibly recover it. Now, E(Text1) may be lengthy, and scrubbing it from the files may take more time than we would care to take (and we ...
I spent some time reading the Jager paper so I share my intuitive understanding of the time-lock encryption using the witness encryption here. Witness encryption is just a building block in the paper but I think putting it into the context helps the understanding.
The paper presents a way to encrypt a message "to the future", i.e., in a way it can ...