Skip to main content
### Number and algebra

### Geometry and measure

### Probability and statistics

### Working mathematically

### For younger learners

### Advanced mathematics

# Stage 5 Cipher Challenge

### The challenge ciphers

### Something to think about along the way, and the mathematical challenge for this problem

## You may also like

### The Knapsack Problem and Public Key Cryptography

### More Secret Transmissions

Or search by topic

Age 16 to 18

Challenge Level

We have created a set of seven very difficult linked ciphers to crack. We recommend that you try them in turn: each gives a small clue on how to solve the next cipher. Note that you may have to spend several days mulling over some of these codes and you will need to make use of spreadsheets, Word or other similar tools to make any headway!

As you try to decode these secret messages, remember that code-breaking is a mixture of a systematic application of mathematics, logic, intuiton and guesswork.

Imagine that you will frequently be attempting to decode encrypted messages coded using the methods employed in the seven challenge ciphers.

Create a flow chart showing how you might go about trying to crack such messages, assuming that you do not know at the outset which method of encoding is used for a given message. Of course, your flow chart will not guarantee the cracking of a code, but ideally will indicate a good way to go about trying to crack the codes.

As you create your flow chart you will see that decisions will need to be made based on probability, liklihood, complexity and speed of computation. You will need to think how best to include these decisions in your flow chart. This can be approached from various levels of complexity; try to solve using as much mathematics as you can bring to the problem.

An example of a simple Public Key code, called the Knapsack Code is described in this article, alongside some information on its origins. A knowledge of modular arithmetic is useful.

In 'Secret Transmissions', Agent X could send four-digit codes error free. Can you devise an error-correcting system for codes with more than four digits?