Tag Info

New answers tagged

1

Theoretically anyone who is capable of connecting to your network is capable of sharing it without your permission. Any device connected to your network can create a private LAN within the original LAN and share the Internet connection by allowing devices to correct to the new, inner LAN. This is sometimes known as a double-NAT. If the repeater is ...


0

The most secure generally available storage option that you're going to have on Windows is is the Windows Data Protection API (widely known by the acronym DPAPI.) This is one of the options for managing the encrypted web.config file sections that you mentioned as an example. DPAPI gives you user and machine specific encrypted storage for sensitive ...


0

It doesn't need to be specific to security agencies 1) How do you establish a secure channel for communication over the internet? TLS 2) What type of information can you share over that secure channel? Anything you want 3) What security measure you need to put in place? Secure channel : So TLS Client identitifaction : Here you got many choice but the ...


0

I think your real question is at the end there, "How long is it going to take to break my encryption?" And that tool that you are asking about is mathematics. For symmetric-key ciphers, you can calculate the number of possible keys by using 2^x where x is the number of bits in your key. In AES-256 for example, the key is 256 bits long, which gives us 2^256 ...


2

Existence of a tool that can guarantee security of some encryption system would entail proving a number of hard scientific problems, up to and including the famous P vs NP. Right now, no cryptographer has succeeded in proving that secure encryption or hashing can actually exist, let alone designed a tool that could test a given system. All we have are ...


4

Administrator is your God. You don't fight your God; you appease Him with offerings and grovelling worship. Your potential attacker can perfectly install some keylogger/screenlogger on your machine, get everything you type, see everything you see, get a copy of everything you download or upload. Basically this is not your machine. Technically, the machine ...


3

Your method cannot be completely unknown, since both sender and receiver know it. Moreover, they run it; so either it is simple enough that they use it in their heads, or it exists as some piece of additional software, in which case the method is also known to their hard disks, the method designer and implementer, and github. In fact, unknown methods do not ...


4

This is security by obscurity. It's bad practice, and it will basically only require your attacker to have some motivation & time to spend in order to identify/analyze your cipher. After that, it's basically game over, "old crypto" is pretty much trivially broken with a desktop computer, there is just no reason not to use a recent & secured system ...


2

As a direct answer to your question, Tom Leek's answer is spot on. However, I recommend you take a different approach: abandon per-user encryption. You will still use network encryption (HTTPS), password hashing, and if you want, full-disk encryption on the server. However, don't use any encryption beyond that. Your application still decides who can view a ...


0

I think you need to decide do you want to encrypt the whole Db, or do you want to Encrypt Each record individually. Encrypting the whole Db - is easy to accomplish. There are various mechanisms that you could implement. This mechanism provides good protection from being hacked/db stolen, but will be easy for your IT staff to read/steal the data. Encrypting ...


2

As the stated requirements force the encryption to be essentially for "show" (security theater?) and basic theft protection, not secure document-level protection, I'd recommend basic full-disk encryption using LUKS or similar. That way you have the master key to the entire archive, and can use non-encryption-based schemes to control per-user access to the ...


13

BUT, we have two new requirements to implement: By law, we are required to be able to decrypt any documents we have on disk, upon request by the government; Wow. I really hope you are planning to inform your users that you will be backdooring your service for law enforcement so that they have enough time to delete their data from your service ...


0

I guess it depends on what your threat model is, if the NSA are after you as a person of interest, full disk encryption is the least of your problems, you should probably just stick to a one time pad and abacus. If you want to keep a potential thief from accessing your documents if your laptop should get stolen, any of the closed source full disk encryption ...


0

There's no real answer to that question other than that you cannot completely trust anything you didn't put together yourself. It's unfortunate, but true. I am certain there are many other available open-source options for WDE, which may allay some of your fears in trusting a company. Then again, some open-source software has been compromised by ...


33

You need a per-document key, not a per-user key. Well, you also need per-user keys, but that is another matter. Namely, each document D is encrypted with a key KD. That key is generated randomly the first time the document is imported in the system. Each document has its own key. The key for a document cannot be inferred from the key on any other document. ...


2

This is Base64 encoded data. Essentially it's a way to encode binary data into printable ASCII. You will often see this when encoding hashes or authentication tokens via HTTP. There are lots of online Base64 decoders. OpinionatedGeek has an easy one to use. For your set of data you'll want to decode each line individually. Here is an example of the ...


0

The SunJSSE provider does not support SSLv2. It does support sending the first ClientHello message of the SSL/TLS handshake in SSLv2 format, though. A client sending the ClientHello message in SSLv2 format is useful if the client is ready to actually use SSLv2. However, since SunJSSE does not support SSLv2, it sends the ClientHello in SSLv2 format for a ...


1

The modulus is usually bound to the key pair. If somebody would want to sign or decrypt anything he/she would basically have to use the same private key. Obviously you cannot generate a valid private key if you only have knowledge about the public key, that would defeat RSA. If you want a more theoretical answer, then I wish you luck and a good mathematical ...


6

This is not DES encryption. This is password hashing with the old DES-based "crypt" scheme. The terminology is, of course, very confusing. DES is an encryption function, but here we are talking about a hashing construction that happens to internally use the DES block cipher; if you look at it closely, then you may notice that the "key" used for that internal ...


0

Linear cryptanalysis is a procedure for attacking block ciphers using plaintext-ciphertext pairs. However, it requires substantially more than one pair. Here's a paper that requires either 2^21 or 2^47 different pairs depending on the version of DES used. This may not be the most up to date, but the number of pairs needed is still considerable. There are ...


5

Well, first of, the number of files in the project Gutenberg, though vast by human standards, is really small for a computer, so it is workable to simply try them all. Apart from that remark, non-random pad data implies biases. If both the plaintext and the pad are "natural language texts", then the question becomes: given m XOR m', where both m and m' are ...


1

What stops you from mounting/decrypting the files with knowledge of just this key? The sig-cache.txt is only a signature of the file encryption key. This means that it is not used at all to decrypt the encrypted volume. It is only used to verify that the encryption key stored has not been modified or changed. This is to ensure that the correct key ...


2

It doesn't weaken the encryption per-se, but it represents an information disclosure issue. By reasoning about the number of bytes that have changed and the position of those bytes, an attacker might be able to infer the types of changes that have been made between two different versions of the container, as well as how the container is being used. Most ...


2

Assuming your encrypted container is using a secure algorithm in a secure manner, this won't let the attacker break the encryption. In the worst-case scenario (writing files provided by the attacker), this is giving them information for performing a chosen-plaintext attack. Any good encryption algorithm (eg. AES or Twofish) is strongly resistant to this ...


2

Using the salt for PBKDF2 as IV for an encryption run which uses the key obtained from PBKDF2 relies on PBKDF2 operating like a random oracle, thereby "isolating" the two usages from each other, preventing bad interactions to happen. This is not a much studied property, but it is plausible, given that PBKDF2 is a lot of nested calls to HMAC, and HMAC is the ...


10

The IV should be unique for every message encrypted, so no, if you intend to encrypt more than one secret using the key you generate from this password, you cannot reuse the salt as the IV. Reusing an IV at best leaks information about the plaintext, and at worst, can destroy your encryption scheme altogether (depending on the mode you're using) and so ...


4

most of them prefer MD5, in fact specify it Well, MD5 is merely an egregiously broken cryptographic hash function, whereas MD4 is a comically, egregiously mega-broken cryptographic hash function. (3DES is a bit broken too FWIW.) However, in addition to the background in Stephane's answer: TDESKey = ...


0

You can create it in two ways: with access control or with encryption. Access Control You create a system where the settlers can access only a insert data page, and don't create a page to read data accessible to them. This way you have the write only system. To actually read the data, you create another page accessible only to the admin, where s/he can ...


0

What you've described is very similar (almost identical) to the basics of the OpenPGP standard. It would be wise to read up on OpenPGP before attempting your own implementation of this scheme. To answer your question posed here: Here is where I am having trouble. If I decide the store a hash of the passphrase in the Session, then the server would ...


14

MD4 and MD5 are not encryption algorithms. They are one-way hash function designed for cryptography. It is important you understand the difference. MD5 is a slightly modified version of MD4 that improves its security somewhat. Another thing that is important to understand is that neither of these function are considered safe for use in cryptography: MD4 ...


1

If I'm reading your question correctly, you'll be fine. You're still hooked up to Facebook via SSL, whose security isn't, at the moment, broken. Tor now includes HTTPS Everywhere, which would force Facebook to use SSL (assuming it was supported) even if it didn't do so by default (which, at the moment, it does). Since Firesheep (a bit later in 2010 than that ...


0

Even though TrueCrypt has been discontinued, I've never seen prove that a full encrypted disk can be (easily) recovered. As an alternative for both Windows and Mac, consider using BestCrypt: http://www.jetico.com/products/personal-privacy/bestcrypt-volume-encryption (Paid) A comparison of disk encryption software can be found here: ...


0

It's difficult to answer a broad question as "is it secure?" So I will answer a more specific but related question: "Am I safe from widely known security vulnerabilities in using TrueCrypt on OS X?" As far as I know, the current answer is yes. If you do decide to go with TrueCrypt, you should keep monitoring this page: IsTrueCryptAuditedYet For an ...


0

WPA uses a 256-bit key. This means that a dictionary containing all possible passwords would have 115,792,089,237,316,195,423,570,985,008,687,907,853,269,984,665,640,564,039,457,584,007,913,129,639,936 entries.


2

HMAC is generally more applicable to situations where two entities want to communicate securely over the internet. It provides two key things, confidentiality and integrity. confidentiality by proving the remote client has possession of the "secret" ingredient, integrity, through validation of message digest. In your use case, local storage encryption, ...


3

Here are some weaknesses (the first one is the most serious): If you do not include the encryption IV in the input to HMAC, then attackers could modify the IV and induce a corresponding change in the message without being detected. Similarly, the attacker could modify SALT1 or ITERATIONS1; the HMAC would still match, but you would get junk upon decryption. ...


4

HTTPS is more than security enough to send and receive information, don't start implementing your own security as HTTPS will take care of it for you. It provides: Confidentiality Integrity Authenticity The biggest caveat when writing mobile applications is to verify the the behavior of your application when it receives a certificate exception. With ...


2

If the server is going to decrypt the data when presented with the user's key, that second layer of encryption does not protect against a leaked user's key. Whoever has that key can decrypt the data. A second layer of encryption does make a brute force attack harder, but if the key for the second layer is stored with the data that advantage vanishes as ...


0

First, client-side encryption makes it hard for the company to sell or mine your data, at least as a business model. What you say is true, you still need to verify the software does what it promises, and doesn't contain backdoors. Unfortunately the problem is still unsolved. Mostly because solving it doesn't help, too, as targeted attacks succeed through ...


4

Client-side encryption does not protect against a malicious trusted application provider who decides to subvert their own system. It does protect against attackers who breach the central store. Those people cannot decrypt without keys, and if the provider doesn't have the keys (the key feature (sic) described above), then the attacker can't steal those in ...


1

In the end, is your quesiton: "Should I encrypt my Private Key when I email it to myself, or backup on cloud storage, or some other place?" Then the answer is yes--absolutely encrypt your PGP Private Key before "backing it up" some place, (encrypt pre-generated Revocation Certificates as well). An example to create an encrypted ASCII Armor .gpg file, ...


1

Gotta love open source! The following code is from the stable Putty-0.63 release. sshpubk.c /* * Decrypt the private blob. */ if (cipher) { unsigned char key[40]; SHA_State s; if (!passphrase) goto error; if (private_blob_len % cipherblk) goto error; SHA_Init(&s); SHA_Bytes(&s, "\0\0\0\0", 4); SHA_Bytes(&s, passphrase, passlen); ...


5

During the handshake, the client and server send each other "random values", which are sequences of 32 random bytes. The "client random" is part of the ClientHello message, while the "server random" is part of the ServerHello message. In both cases, the first four bytes of the random value encode the current date and time (number of seconds since January ...


1

TLS as a protocol does not depend on a the system time. The only point where the system time is used is in the Random field of the Client Hello and Server Hello handshake messages. From RFC 5246 (TLS 1.2): Clocks are not required to be set correctly by the basic TLS protocol; higher-level or application protocols may define additional requirements ...


0

So basically, the server will generate a key-pair for each user that signs up. It will give the user the private key, and keep the public key to encrypt anything that it receives for the user. When information is sent to the server (in plaintext) for the user to obtain, the server will encrypt the data with the public key, and when the information is ...


1

Before I give my answer, lets first go over the subject of HMAC. Hash-based message authentication code (or HMAC) is a mechanism for calculating a message authentication code involving a hash function in combination with a secret key. This can be used to verify the integrity and authenticity of a a message. Now HMAC authentication guarantees the ...


1

The one-time pad sounds pretty much exactly what you are doing. It would look something like this: Generate a string of random numbers (base-10 or hex) large enough to encrypt your entire plaintext. Convert your entire plaintext into base-10 or hex. You can do simple digit to digit subtraction (no carry) to encrypt your plaintext. To reverse it, you would ...


6

3DES is a fine block cipher. The best known attack has academic cost 2112, which is way beyond the technologically feasible. The main issue with 3DES is that it works on too small blocks (8 bytes, instead of 16 like AES), but that is not necessarily a problem in a specific situation. 3DES is still an encryption system, so if it is used as MAC then this must ...


2

The exact answer depends on the nature of the data you handle and how you go about it. 3DES has been considered weak for some years now: machine have existed for several years that can break a single DES encryption in about a day. Still, in the current state of affairs as publicly known, the best attack against 3DES (using keying option 1 which means 3 ...


0

In my opinion, it is not so safe. 3 rounds with 56b key gives us algorithm strength equal to 192b, but when we consider "Meet in the middle" attack strength decreases to 112b.



Top 50 recent answers are included