Tag Info

Hot answers tagged

69

You should think of OSI layers as packaging. Let's say I want to ship a glass to you. I chose an original package for advertisement purposes, showing how nice is my product and what you can buy to add to your "glass" experience. That's the high layer of my protocol. Then I put this package in a box filled with soft thingies because I don't want it to be ...


66

Time is relative. Cryptography lives in the ethereal world of abstract computing machines: there are machines that can do operations. Bigger machines can do operations faster. There is no clock that you can enforce; physical time has no meaning. In other words, if an attacker wants to get your file earlier, he just has to buy a faster computer. Now one can ...


55

If you do not want to involve a third party, you (the party encrypting the file) could simply release the key to decrypt the file on the target date. I have seen this done for video game releases. Customers are allowed to download an encrypted copy of the game in advance. Then, when the release time comes, the game company simply releases the key. That way, ...


48

Is Git crowdsourcing the production of SHA-1 preimages? Not to any meaningful degree. Github doesn't say how many commits it's tracking, but it's probably not more than a few billion. For comparison, there are 1,461,501,637,330,902,918,203,684,832,716,283,019,655,932,542,976 possible SHA-1 hashes, so the odds of finding a plaintext matching an arbitrary ...


43

Carefully place a spaceship broadcasting the decryption key in orbit around a black hole. The pull of gravity will delay the message until the appropriate time. Or you could just do like normal people and place the key broadcasting spaceship an appropriate number of light years away from the intended audience.


20

This behaviour is specified by RFC2617. The reason for the extra round trip is that the server can request different kinds of authentication: basic, digest, etc. If you know in advance that the server takes basic authentication, then as you say, you can save a round trip. But that isn't the default, and I think the .NET libraries are right to expose this as ...


16

Use secret sharing to split a private encryption key into N parts, parameterized to allow reconstruction of the key with K or more parts, where K <= N. Best done using CRM, as described on the following page: http://en.wikipedia.org/wiki/Secret_sharing Then send each part to independent services that agree to publish at a given date in the future. Up ...


13

To complement the answer from @raz, one must be aware of Protocol Downgrade Attacks. Browsers like IE send their maximum supported version, and then the server chooses (in your case, IE says "I know up to TLS 1.2" and the server responds with "we will do TLS 1.0"). However, browsers know that there exist buggy servers out there, that will simply have an ...


12

There have been some discussions about mitigating issues with some record splitting. Namely, what makes Poodle efficient is that padding may use up to a full block (8 bytes with 3DES or RC2, 16 bytes with AES). When this happens, only the last byte of the block is checked by the recipient, which is why the alteration from the attacker gets through with ...


12

You could probably compute your own SHA1 hashes quicker from small arbitrary texts than that you harvest the hashes that someone else computed. But there's a lot of possible SHA1 digests, about as many as atoms in the world. That illustrates the challenge if you want to keep a list of all known digests and search that list.


11

What you have defined is not security. SSL can give you security. So...your question is easy to answer: Yes - SSL is up to 100% more secure than encoding. While elements of your 2nd paragraph have some basis in fact (there are malicious MITM attacks etc) they can be protected against, whereas your solution has no protection, and is easily decoded by ...


11

The server chooses which cipher suite to use for establishing the secure channel. The client (browser) poses the protocols and encryption algorithms that it will accept. The server chooses the one it deems most secure (based on its own list of acceptable protocols) and that is used for the secure channel. If the server does not see any cipher suites that ...


10

While OSI is just a model, and in reality the layers can be blurred or nonexistent, the concept of layering protocols is specifically to allow a change in a particular layer to leave the layers above and below it alone. As an example: Physical - does a basic packet care whether it is travelling over copper, fibre or wireless? It could travel over all ...


9

SSLv3 protocol is flawed. This cannot be fixed. Generally, an attacker would exploit this by forcing the victim to connect to a server using SSLv3 by forcing connections using higher protocols to fail. TLS_FALLBACK_SCSV attempts to stop the browser/server from falling all the way back to SSLv3 if a higher protocol has already been tried. As you can ...


8

The amount of human effort which has gone into computing each of those SHA-1 hashes found in Git is significant. And that means the number of hashes computed that way is fairly limited. If you want to find collisions, you need zero human effort per hash and very little computer time spend on each hash. Bitcoin might be the only system with enough computing ...


7

I believe that in order to properly design your system, you need to define what "time" means in your context, and why you chose a specific time. Assuming that your message is to be decrypted on the 29th of August 1997 at 02:14 AM, what is difference between the moment before and the moment after the deadline? Why specifically this date? You may be able to ...


7

Secure Communication The communication protocol must be secure. If the communication channel is insecure then the authentication is insecure. TLS/SSL is one way to secure the communication protocol. If you don't use TLS/SSL you would need to build a framework to build a secure communication protocol over an insecure link. If done properly ...


5

What is a session key? A session key is a single-use symmetric key used for encrypting all messages in one communication session. Scenario: Alice would like to establish a secure communication with Bob. But she cannot provide the key in plain text, otherwise someone sniffing the communication might be able to decrypt the information later on. What ...


4

As listed in the OpenSSL docs, the following TLS 1.0 suites support PFS via Diffie-Hellman Ephemeral: TLS_DHE_DSS_WITH_DES_CBC_SHA DHE-DSS-CBC-SHA TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA DHE-DSS-DES-CBC3-SHA TLS_DHE_RSA_WITH_DES_CBC_SHA DHE-RSA-DES-CBC-SHA TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA DHE-RSA-DES-CBC3-SHA ...


4

If the only trusted party is yourself, and you can't guarantee being available when the message contents are to be made public, then what you can do instead is to build a device (physical or virtual) that will automatically make the key public at the required time, and then hide the device. An easy way would be to buy a virtual server from Amazon or any of ...


4

If my understanding is correct, anyone in possession of Bob's private key can easily determine the session key and decrypt the message. Only Bob should have access to Bob's Private Key, hence no one else would be able to decrypt the encrypted session key.


3

TCP provides to applications a stream interface. There are a few exceptions where the details leak through, but generally a TCP socket is opened, and then each side sends a series of bytes to the other. Those bytes will be delivered intact and in order, up until the point where the remote end closes the connection (which you will be informed of). ...


3

The password in SRP is actually a shared secret of (possibly) low entropy. It can be the "password" as the human user understands it, or anything that is deterministically derived from the password. In your case, yes, using a password hashing function such as PBKDF2 is a valid approach. It has the following caveats: PBKDF2, like bcrypt and other good ...


2

If a port on the target machine is closed, it will either respond that the connection was refused or it will drop the packet silently. Ports being closed or "stealth" will not stop a DoS as the target will receive the packets whether it responds or not. In some cases ports are entirely irrelevant (see ping flood, smurf attack).


2

DoS attacks don't require any open ports on your side. They can just use all your bandwidth even if the ports are closed. How? The IP packet are sent from the attacker, and routed through several routers until it reaches your system. If the port is open, the connection succeeds. If not, your system can send back a "Port closed" message or simply drop the ...


2

Sending one type of network traffic over another protocol is called network tunneling or covert channeling. This is quite easy to do, and with some experience, you can send plaintext data over port 443 (to make it appear encrypted to the untrained eye) or send IM messaging traffic over port 80...the opportunities are endless. The method of sending data ...


2

Yes, password credentials can still be stolen through a man-in-the-middle method with SSHv2. The victim profile will depend on the type of man-in-the-middle method used. For your example of arp poisoning from a client workstation, arp poisoning would maximally really grant middling between clients on the nearby local network, or all clients if the server ...


2

I'm not sure who this is intended to stop -- the encoding scheme described is barely strong enough to defeat a "clueless eavesdropper"-class threat, and is incapable of stopping or even significantly slowing a "nosy little brother"-class attacker. Someone with the technical capabilities to perform a successful SSL "man-in-the-middle" attack as described in ...


2

You are in the situation, that your client and server alreay share a secret (your algorithm adding 42 to each byte). While this is a very unsecure implementation, it would be possible to encrypt the content with a strong key and your message would be safe. The problem is, that as soon as somebody gets the secret (however he does it), he can read your ...


2

It is a preprocessor to Snort and can't be used in anything but Snort unless you, essentially rewrite Snort's decoder and preprocessor structure. But why would you do that when you can just use Snort?



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