What topics can I ask about here?

Crypto Stack Exchange is for software developers, mathematicians and others interested in cryptography.

Cryptography Stack Exchange is for asking questions about the mathematics and properties of cryptographic systems, their analysis ("cryptanalysis") and subsidiary topics that generally make up cryptology, such as random number generation. As such, we welcome questions on topics such as:

  • Asymmetric and symmetric cryptographic algorithms.
  • Cryptographic protocols.
  • Cryptanalysis techniques.
  • Hash functions, hashing.
  • Entropy and information theory.
  • Random number generation.

Do we accept basic level/homework questions?

Yes, we do. However, please provide an indication of what you are not understanding/need clarification on and your attempts at solving it, so we have a clear indication of where you are stuck. This goes for all questions, not just homework. If you have just written out your assignment, your question will be closed. You might want to read this article on writing the perfect question – originally for Stack Overflow, but relevant here too.

Do we accept questions asking for cryptanalysis of your cipher (hash function, ...) design?

No, we do not. If you want peer review of your full cryptographic scheme, here is not the place to acquire it. However, you might like to break your problem down into specifics, such as "under these conditions, does structure X have desired security property Y?" which would be a perfect fit for us.

Can I get data analysed here? Can I challenge people to decode something?

No. Such questions are not helpful.

I'm confused as to where my question belongs; there are so many sites!

There are lots of places in the Stack Exchange network to ask your question; don't worry too much about getting it wrong, because it can always be migrated to the right place. That said, it is useful to provide a general guide here:

  • If your question is about using a cryptographic library (e.g. Crypto++, OpenSSL etc) and using it in your application, you probably need Stack Overflow. (A good indicator is the existence of source code in your question or most good answers).
  • If your question is about mathematics generally, without any cryptographic element, you'll get an excellent answer on Mathematics.
  • If your question is about cryptographic policy within your organisation, implementation and practical usage considerations, you probably are looking for Security.
  • If your question is about usage of a specific cryptographic software (not its cryptographic internals), Super User is the right site.
  • If your question involves large amounts of research and a lot of computer science, you might find CS Theory an appropriate place to ask. Please bear in mind their FAQ and policy on non-research level questions.

I'm still stuck between Security.SE and Crypto.SE.

There are some questions which apply to both security.SE and crypto.SE, but will (should) receive different answers. For instance, if you ask about whether SHA-1 is appropriate for hashing passwords, the crypto.SE response will detail things about relevance of collisions and differentials and the Merkle-Damgard construction to the problem of hashing passwords; while the security.SE response will rather courteously but firmly insist on using bcrypt or PBKDF2.

The rule of thumb, here, being that you should post to crypto.SE if you want to understand the internals, and to security.SE if you want to know what you should do now.

Please look around to see if your question has been asked before. It’s also OK to ask and answer your own question.

If no site currently exists that will accept your question, you may commit to or propose a new site at Area51, the place where new Stack Exchange communities are democratically created.

For more help, see "What types of questions should I avoid asking?"