In my audio post below I babbled on about birthdays and wondered about how the whole birthday party thing developed into what it is today.
So being the curious fellow I am I took a moment to go to Answers.com and ask them about this. Here is what I found out.
History of celebration of birthdays in the West
It is thought that the large-scale celebration of birthdays in Europe began with the oriental cult of Mithraism in the Roman Empire. Prior to this such celebrations were not common, and hence practices from other contexts, such as the Saturnalia, were adapted for birthdays. Because many Roman soldiers took up Mithraism, it had a wide distribution and influence throughout the empire, until it was supplanted by Christianity. Birthday celebrations were rare during the Middle Ages, but saw a resurgence with the advent of the Reformation. During this period, they were seen as a good way to transfer customs from the saint’s days to other dates not linked to the newly repudiated veneration of saints.
Even today, the celebration of birthdays is not universal in the West; in addition to those people preferring name day celebrations, Jehovah’s Witnesses do not celebrate either, considering them to be pagan festivals, along with Christmas and Easter.
In most English-speaking countries it is traditional to sing the song Happy Birthday to You to the honored person celebrating their birthday. Similar songs exist in other languages, such as “Lang zal hij/zij leven” in Dutch or “Sto lat” in Polish. This happens traditionally at a birthday party while someone brings a birthday cake into the (often darkened) room.”
This answer doesn’t totally satisfy me because it leaves a lot of questions such as what happens outside of Europe, but I suppose that it will do for now.
It did however lead me to the link on the Birthday Attack which I’ll provide here.
- A birthday attack is a type of cryptographic attack which exploits the mathematics behind the birthday paradox, making use of a space-time tradeoff. Specifically, if a function yields any of n different outputs with equal probability and n is sufficiently large, then after evaluating the function for about different arguments we expect to have found a pair of different arguments x1 and x2 with f(x1) = f(x2), known as a collision. If the outputs of the function are distributed unevenly, then a collision can be found even faster (Bellare and Kohno, 2004).
- Digital signatures can be susceptible to a birthday attack. A message m is typically signed by first computing f(m), where f is a cryptographic hash function, and then using some secret key to sign f(m). Suppose Alice wants to trick Bob into signing a fraudulent contract. Alice prepares a fair contract m and a fraudulent one m‘. She then finds a number of positions where m can be changed without changing the meaning, such as inserting commas, empty lines, one versus two spaces after a sentence, replacing synonyms, etc. By combining these changes, she can create a huge number of variations on m which are all fair contracts. In a similar manner, she also creates a huge number of variations on the fraudulent contract m‘. She then applies the hash function to all these variations until she finds a version of the fair contract and a version of the fraudulent contract which have the same hash value, f(m) = f(m‘). She presents the fair version to Bob for signing. After Bob has signed, Alice takes the signature and attaches it to the fraudulent contract. This signature then “proves” that Bob signed the fraudulent contract.
- To avoid this attack, the output length of the hash function used for a signature scheme can be chosen large enough so that the birthday attack becomes computationally infeasible, i.e. about twice as large as needed to prevent an ordinary brute force attack. It has also been recommended that Bob cosmetically modify any contract presented to him before signing. However, this does not solve the problem, because now Alice suspects Bob of attempting to use a birthday attack.
- The birthday attack can also be used to speed up the computation of discrete logarithms. Suppose x and y are elements of some group and y is a power of x. We want to find the exponent of x that gives y. A birthday attack computes xr for many randomly chosen integers r and computes yx âˆ’ s for many randomly chosen integers s. After a while, a match will be found: xr = yx âˆ’ s which means y = xr + s.
- If the group has n elements, then the naive method of trying out all exponents takes about n / 2 steps on average; the birthday attack is considerably faster and takes fewer than steps on average.”