Tag Info

New answers tagged

0

Consider a cryptosystem and its vulnerabilities When you have the following secret components of the system: Secret KEYs (usually one per user/use of the system). SecretTransformation (only one singleton secret shared with all endpoints). Compare these two scenarios Security of a secret key shared with only the interested parties. Security of the ...


2

The Nazis had physical code books they would distribute. They would determine the Enigma settings for the day. Then using those settings, each message would start with a message key setting the starting rotor settings for the rest of the message. These were useful as cribs for breaking out messages since all messages the Nazis sent for a day started using ...


3

Here's a possible website you can use to find out more: http://www.openculture.com/2013/01/the_enigma_machine_how_alan_turing_helped_break_the_unbreakable_nazi_code_.html A Summary: Legitimate Method: The Nazis released a monthly code sheet with the appropriate settings for each day of that month. Once you knew the settings, you could type in the nonsense ...


2

Check out Turing's biography by Hodges. There's a pretty good description of both how the legitimate (ie; nazi) and unauthorized encoding and decoding of enigma messages worked.


-1

If you are using TLS/SSL to authenticate the session (as you MUST if you want to deliver the crypto.js encryption software to the client) then the answer is: it depends on whether the decryption for TLS/SSL occurring at the same place as the application level encryption for the software. For example, if you are decrypting the crypto.js encryption in node.js ...


1

If you browse the Crypto.js source, it does not implement TLS (or SSL), and as such can't implement the TLS extension Heartbeats. By not implementing TLS or Heartbeats, it can't have the Heartbeat vulnerability exploited by Heartbleed (trusting the payload length in a HB request even if its longer than the original message and echoing back that much data). ...


5

Crypto.js does not use OpenSSL, it is interoperable with some of the same algorithms, and is not vulnerable to Heartbleed. All the more so because usually you use crypto.js on the client, not on the OpenSSLified server.


0

This is a flawed system if its meant to ensure data wasn't tampered by a malicious attacker. Any attacker who can tamper with the transmission of the file (or the file on the FTP site), could have similarly tampered with the transmission of the md5sum (or the storage of the md5sum on the site) and changed it to something that corresponds to the tampered ...


1

There are a lot of ways to look at security questions, and rarely a "right" answer. In this case, you might want to start by listing out what the basic goal(s) of the cryptosystem is/are; i.e., "what's the point?". From there, you can consider what is not being fulfilled if the hash doesn't match. In this case, you're looking at a system that works by ...


1

Thomas has already written an excellent answer, but I thought I'd offer a couple more reasons why HTTPS is not more widely used... Not needed. As Jesper's answer insightfully points out "the majority of information on the web doesn't need security". However, with the growing amount of tracking taking place by search engines, ad companies, country-level ...


1

I would advise against implementing this yourself. If you disagree, have a look at the current existing AES implementations; many libraries are available and it's likely that these will suit your needs. Have a look at Turning a cipher into a hashing function and Description of the AES cipher on Wikipedia if you're interested how the algorithm works.


2

There is an informational RFC for use of OpenPGP keys in SSL/TLS; as the RFC says: The term "OpenPGP key" is used in this document as in the OpenPGP specification [RFC4880]. We use the term "OpenPGP certificate" to refer to OpenPGP keys that are enabled for authentication. That's what these keys are for: usages as part of authentication protocols which ...


5

Yes. Most private keys have an easily identifiable format. If its say an RSA private key generated with openssl, they have a specific format e.g., will always start with the same three bytes depending on key size: 30 82 01 (for 768 bit key or MIIB in base64) 30 82 02 (for 1024 bit key or MIIC in base64), 30 82 04 (for 2048 bit key or MIIE in base64), 30 ...


0

Generally speaking, this is called hybrid encryption. When we need to encrypt a lot of data with RSA, well, we don't; not only would this be highly inefficient, but we also don't really know how a big chunk of data should be split into small messages to be individually encrypted with RSA: from a cryptographer's point of view, this is a non-trivial issue, ...


3

Exact answer depends on the involved mode of operation, but most of them begin to exhibit unwanted structure when about 2n/2 blocks have been processed, when the underlying block cipher uses n-bit blocks. The fundamental reason for this is that a block cipher like AES is a permutation: any two distinct input blocks are encrypted into two distinct output ...


0

The default mode will be MODE_ECB as detailed in the documentation. The different modes have already been described in this answer.


0

Burp can execute statistical analysis on tokens with the Sequencer tool. Send requests that return a security token from other Burp Suite tools to test in Burp Sequencer. Reissue the same request repeatedly, to generate a large sample of tokens for statistical analysis. Perform a rigorous set of tests, including the standard FIPS tests and others, ...


2

If you do not have access to the source code, you will have to make multiple attempts to see if there are any patterns in the token generation. If it is a basic incrementor, this may be easy to defeat. You can take the length of the token into account as well. Here are some OWASP guides on the topic, which may be of use: Testing for weak password change ...


1

From the example you show, you don't continue far -- what is shown is not a valid RSA key pair, only something which superficially looked like one in the eyes of the tool you used. Assuming you actually obtain a valid RSA key (you don't, apparently, but let's suppose that you find one), then your best bet would probably be to assemble the key with a small ...


1

The idea of PFS is that not all keys are equal, when considering risks of ulterior theft. A private key stored in a file may be stolen afterwards, e.g. if the disk fails and is carelessly discarded. On the other hand, a key which resides in RAM only disappears when the machine is shut down or rebooted, and thus is unlikely to be recovered by an hostile ...


3

As others have explained, the "period" measures the number of output bits (or "words", depending on terminology) after which the PRNG begins to repeat itself. For some PRNG this is relatively ill-defined. A PRNG is a deterministic algorithm with a state (the contents of its internal buffers and counters and variables). The sequence of subsequently emitted ...


3

Every PRNG has an internal state which is used to compute the next output deterministically. The state is updated after each output. If the state has n bits after at least 2^n outputs the internal state must repeat which means that the PRNG produces the same sequence of outputs. Roughly speaking, the number of outputs until the internal state repeats is the ...


1

Schneier's blog has a couple of clarifying statements: It is more likely that the NSA has some fundamental mathematical advance in breaking public-key algorithms than symmetric algorithms. and I personally am concerned about any constant whose origins I don't personally trust. The justification of the former statement of course is very ...


0

Most stream ciphers are blocks ciphers with some sort of operation mode being used to tweak the encryption of the "next" block. Frequently data from the previous block is used to alter the output of the "next" block, which to your second question, will make it impossible to decrypt the next block if you loose the previous one. For example, in a network ...


1

A block cipher is a key-indexed pseudo-random permutation on the space of blocks: for a given key K, AES maps 128-bit blocks to 128-bit blocks, such that no two distinct input block values are mapped to the same output block value. Knowledge of K allows efficient computation of the inverse permutation as well. A block cipher can be used as a building ...


0

Common block encryption algorithms: AES (Rijndael) Blowfish DES (Data Encryption Standard) Triple DES Serpent Twofish Camellia CAST IDEA Common stream encryption algorithms: RC4 Common cryptographic hash functions: MD5 SHA-1 SHA-2 SHA-3 (Keccak) HAVAL RIPEMD Tiger WHIRLPOOL In the public key cryptography realm, we have: DSA (Digital Signature ...


1

Your information is only secure as the server it lays on and the client machine and network is secure. It's always good practise to have different passwords for different websites. Reason behind it: Let's say you have same password for everything. Let's pretend "Facebook" got compromised with some vulnerability and got your password, they would able to get ...


1

Large corporations have an information security team and they are responsible for the different security policies and practices (password policies, key management, pentesting...). There are also a lot of recognized publications with good practices in security management they tend to follow (like ISO27001/ISO27002...). About VIP people, I don't think they ...


3

Do not use the same password on multiple sites. That's number one. Second, don't use simple passwords for any site where you care about your account. To do this, you need a paper list or a password manager (e.g. KeePass, LastPass, etc). A manager is almost always the way to go.


1

... I don't think there's a perfect one-size-fits-all solution. Different solutions are best in different cases. I think password safe's are a good balance of difficult passwords/not losing them, though obviously this makes the security of your password safe critical; it may even be worth having several password safes, perhaps for different classes of ...


1

The blog post at Portcullis security seems to be saying that you have to hash the 12-byte "salt" with SHA1 to turn it into a 20-byte string before prepending it to the hashed password.


1

If there is a method faster than brute force, it represents a weakness in the hash function. Essentially what you're looking for is a modified preimage attack, just for a group of hash values rather than a single value.


-1

I think you should look at a more standard approach to store and forward, which is similar to the S/MIME encrypted email method. Take a look at PKCS#7 and XML Encryption standards. These types of protocols work where the sender of the message looks up each recipient's certificate in the user store. The sender generates a symmetric key (AES is just fine) for ...


0

As Thomas already pointed out, disabling session resumption is not a vulnerability. Session resumption is actually a performance feature to reduce latency of subsequent requests to the same server made within a short span of time. There is a reason some servers return a session ID then refuse to accept it (which this test is complaining about). I recall ...


2

The chances of this happening by chance are zero. You have either: Found the old private key you thought was lost (hidden file?), or Used a deterministic key generation mode which takes user-supplied entropy (passphrase). If you use the same entropy you will get the same key, or You've got a completely borked install which always returns the same random ...


4

"Additional authenticated data" is whatever you wish it to be. GCM is an authenticated encryption mode in which the inputs are: a key K suitable for AES (128, 192 or 256 bits); a 96-bit IV; some plaintext data P whose length is at most 239-256 bits (i.e. about 68.7 gigabytes); some additional data A whose length is at most 264 bits (i.e. about 2.3 millions ...


0

The first you need to consider when requesting someone to test your algorithm code or anything of that sort is MAKE IT UNDERSTANDABLE. If you can understand what you mean it doesn't mean everyone can. Anyway there are two problems in your cipher: It is insecure under Semantic Security (with a key shorter than the message) and it is insecure under CPA (Chosen ...



Top 50 recent answers are included