61

There is no way to do this - this is a subset of what DRM schemes attempt to do. If an end user can decrypt something once to see it, they can see it again. Any of the following may be possible: first take a copy and decrypt that copy the screen edit the application The only way you could get close would be to have total control over the hardware and ...


38

A cold boot attack is impossible on an offline device. The only way an attacker could use a cold boot attack on your portable storage device is if they also had physical access to your computer as it was plugged in the disk unlocked. A cold boot attack relies on encryption keys being stored in RAM, and the persistence of that RAM once the computer is hard ...


23

As you already hinted at, such a thing is only possible in hardware. A software or encrypted data solution would always suffer from the option of making a copy before decryption. In hardware, the scheme would be to destroy information on decryption. A naive approach would be to simply read a block into memory, destroy it on storage and then decrypt it. ...


17

There are several possible attacks on Bitlocker, and apparently a software is available to the police that supports recovery of the password (but requires sniffing the RAM while the device is mounted and unencrypted). The primary weakness is the recovery key stored in both AD and the TPM chip - but if your attacker has only the USB stick, those don't apply. ...


17

If you only need to verify the email when the user provides it, then hash it, like vidarlo suggests, in the same way you would hash a password. No need for encryption here. The flip side with this approach is that you can never recover the email, even if you really need it (e.g. to contact your users in case of a compromies, as suggested in comments). If ...


11

Do you really need the users e-mail address? If you store e-mail address as hash(e-mail + salt):salt you can trivially verify the e-mail address supplied by the user. If the user requests a password reset, simply verify that the e-mail address matches, and send the e-mail to the user supplied e-mail. If you want to allow lookups in the database based on e-...


9

If a network is available, you could offload the decryption procedure (and the private key) to a service running on a secure server. You could then enforce whatever rules you want on the server. The client would submit the opaque text to the service and ask it to decrypt it and return the plaintext content, and the server could decide whether the client ...


7

Proprietary in this context refers to a self-made algorithm as opposed to an already established and proven algorithm. It is not used in the sense of closed source, which refers to the implementation and not the algorithm. There are also open source implementations for Telegram's MTProto algorithm. Note that MTProto has been published by Telegram and that ...


6

An alternative to existing answers: put the emails on a separate machine & application and store only the hashes in your main application DB. Use the hash for verifying the emails. When you need to send an email your application will communicate with this other service passing on the hash + email message and the other application will send the email. ...


5

When a sender uses Thunderbird to send an S/MIME encrypted message to a recipient, Thunderbird requires the sender's certificate in addition to the recipient's certificate, so that Thunderbird can send the sender's certificate along with the message to the recipient. This is done for two reasons: 1) So that the recipient can verify the sender's digital ...


5

Xavier59's answer is correct, in that protonmail uses SRP. Therefore (under normal circumstances) your password is never sent to protonmail's server. However, the SRP is implemented in javascript, which is served by protonmail's server. If protonmail were to be compromised, or if protonmail were to 'go rogue', they could easily serve javascript that ...


5

You are wrong in your assumption that protonmail stores the password used for the encryption of your private key. Protonmail uses the Secure Remote Password Protocol (SRP on wikipedia - Protonmail blog post about SRP) and so they only store a verifier that is irreversibility related to your password. When entering your password on the login form of ...


5

To ignore it, just ignore it the way you ignore anything, by not looking at it or paying attention to it. I will consider that you want to suppress it, so it isn't there to be ignored. On Unix and Windows (which is most of the places OpenSSL is run, though not all) use 2>/dev/null or 2>NUL: respectively to discard all error messages. As it says, use -...


4

From RFC 8446, Section 5 (TLS 1.3, Record Protocol): The TLS record protocol takes messages to be transmitted, fragments the data into manageable blocks, protects the records, and transmits the result. Received data is verified, decrypted, reassembled, and then delivered to higher-level clients. The cipher for encrypting fragments at the Record ...


3

Doing 'the inverse' seems like the more secure solution. If: the backup function is the only function that the backup server performs all incoming connections to the backup server are blocked all outgoing connections (except the connection to the server being backed-up) are blocked the only process that the backup server performs is the backup process (...


3

Am I correct in guessing.... yes Would there be a point in encrypting a password before an https post request, No point. It's already encrypted. But you do need to think about what you are going to compare it with serverside to validate it - the stored password should encrypted using a suitable password hash/


2

Is FeliCa encryption safe? Yes, but also no. Yes, insofar as there doesn't appear to be any published cryptanalysis attacks against the cryptography employed by FeliCa. No, because it isn't an open standard. This makes it difficult for cryptographers from all over the world to review and audit the function. Instead, Sony is relying on a small pool of ...


2

The encryption key is stored in the keychain. Most keychain items can be easily accessed with various phone breaker software. Any device made by a large company cannot be guaranteed to be secure,unless you make your own hardware and software and communicate via encrypted protocols. Only then you can guarantee that your systems are safe. Even new encryption ...


2

An encryption key is generated and used to encrypt the secret message you want to store. The secret message is then stored encrypted on their server and they distribute you an URL which contains the decryption key and the id of the secret message. They do not store the decryption key anywhere on their server and thus have no knowledge of the message content. ...


2

It depends what kind of encryption/format you have. Currently, there are many formats which cryptsetup support. Basically, the most popular are LUKS1 and LUKS2. You can check what kind of format you have with following command: cryptsetup luksDump <device> John the Ripper only supports CPU cracking with LUKS1 and specific combination of encryption/...


2

On the security side, you can protect yourself with: Rate limiting tools like fail2ban to block DDoS and other automated noise Recaptcha to block brute force attempts A stateful firewall, intrusion detection, or intrusion prevent appliance to block known attack methods (This site forbids product recommendations, but there are packaged/supported paid ...


2

Thunderbird (as well as any other email client) needs your own certificate to encrypt the email for yourself, too. Why is that so? When you send an email, the email is not just sent, but a copy of it is kept in your sent folder. As a consequence, when you send an encrypted email, the email needs to be encrypted not only for the recipient, but also for ...


2

It is not in any way practical, and fundamentally impossible (in a reliable way), but it may be possible to some extent. The obvious hindrance which makes the endeavour fundamentally impossible is that whatever it is you decrypt, once you've read it, it's inside your head. So, to be sure the secret stays secret, there would have to be a poison pill ...


2

Logging in requires looking up the email address, which isn't scalable if they're hashed properly – with 10k users in your system, you'll have to hash a user's email on average 5k times on every login, due to salts. May I question your premise? "I figured the user needs the email to login obviously" Why not issue them (or let them select) a username ...


2

The Cipher-Block-Chaining Mode becomes problematic if your threat model includes an attacker who actively manipulates the encrypted data. This allows an attacker to flip specific bits in the cipher to flip the same bits in the resulting plaintext - a property called malleability. If not paired with a MAC to ensure integrity, CBC is not very secure. When ...


2

OTP is not made for that. OTP is used as a second factor authentication to avoid a leaked password compromising the whole account, and is usually rate-limited, and usually locks itself during a small interval if mismatched (I've seen one minute lock after 3 errors). That is the main usage for OTP. Encrypting with OTP does not make sense. As the token you ...


2

No, it's not useless. Transport encryption may hide details about the application protocol being used. For example, if a TLS handshake between Alice and Bob is being recorded, and then some data is being transfered, then the attacker can really not see what kind of data is being transferred.1 On the contrary, if an application-specific protocol, such as ...


2

It's usually a bad idea to encrypt user data with a key based on their password. What if they forget their password? If you really want to, the "KDF" in "PBKDF2" stands for Key Derivation Function. So you could use that again to derive a key for the database. Remember to implement a mechanism to change the password as well. Depending on your setup, this ...


1

From a purely theoretical sense - it is only possible if you can make sure that after the first decrypt there are no copies in existence of both the decrypted data, and either the encrypted data or the key(s) needed to decrypt it. In principle, you can only do this with the cooperation (willing or coerced) of the parties that handle these pieces of ...


1

How exactly VPN providers encrypt data from client to their server? There's numerous algorithms, or cipher suites. Which ones that can be used are dependent on the exact protocol used. You want to avoid using broken ones so using the latest versions and good configurations of your software is needed. One you want to avoid for sure is anything DES. ...


Only top voted, non community-wiki answers of a minimum length are eligible