Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Techniques For Audio Encryption: Bhavesh Patel Surajit Karmakar Khushal Chheda Tej Gala

Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 6

Techniques for Audio Encryption

Bhavesh Patel
Shah & Anchor Kutchhi Polytechnic, Mumbai

Surajit Karmakar
Shah & Anchor Kutchhi Polytechnic, Mumbai

Khushal Chheda
Shah & Anchor Kutchhi Polytechnic, Mumbai

Tej Gala
Shah & Anchor Kutchhi Polytechnic, Mumbai

patelbv@acm.or g

surajit.3528@ya hoo.co.in

legentkiller123 @gmail.com

tejgala@gmail.c om

ABSTRACT
Audio in its digital form is popularly used now-a-days. It is also being used for the distribution of music in digital format. Thus there is a need for its encryption to prevent it from misuse and unauthorized access. This paper will discuss some of the algorithms that may be used for encryption of digital audio files. Also a custom algorithm is proposed. 4D 54 68 64 00 00 00 06 ff ff nn nn dd dd

The ASCII equivalent of the first 4 bytes (32 bits) is MThd (i.e the first four bytes are the ASCII values for 'M', 'T', 'h', and d); Next comes the 4-byte size of the header. This will always be 00 00 00 06, because the actual header information will always be 6 bytes. ff ff stands for file format. It specifies the overall organization of the file. nn nn is the number of tracks in the midi file. dd dd is the number of delta-time ticks per quarter note.

General Terms
Audio Encryption, DES, AES, Novell, Custom.

Keywords
Audio, Encryption, DES, AES, RSA, Novell, Custom.

INTRODUCTION
Piracy in todays world has reached its limit and almost every distributable digital data is pirated by hackers all over the world. One way to stop this is to distribute the digital data in licensed copies which is nothing but a type of encryption in which the digital certificates and signatures are used to truly identify the distributer and the one purchasing it. However, hackers are successful in breaking such cryptographic functions as most of them are just the standard methods implemented in programming code. So there is a need to encrypt the digital data using some hybrid and complex cryptographic functions which may include more than two standard cryptographic functions.

0 1 2

Single track Multiple tracks, synchronous Multiple tracks, asynchronous

AUDIO AND MIDI 2.1 Header Format of Midi


The header chunk (ie, groups of bytes preceded by an ID and size) appears at the beginning of the file, and describes the file in three ways. The header chunk always looks like:

Single track is fairly self-explanatory - one track only.. Synchronous multiple tracks means that the tracks will all be vertically synchronous, or in

other words, they all start at the same time, and so can represent different parts in one song. Asynchronous multiple tracks do not necessarily start at the same time, and can be completely asynchronous.

AUDIO ENCRYPTION 4.1. WAV ENCRYPTION


For encryption of audio files we have several standard algorithms which encrypt the digital audio in the same way as they do digital data. Some are symmetric algorithms while others are of public key cryptography. Symmetric algorithms are easier to implement and are less complex in terms of calculations and processing power required than those of public key cryptography as symmetric ones require only one key to encrypt as well as to decrypt the files whereas those of public key cryptography require two keys, one private which is usually used for encryption and another public usually used for decryption. Some of these symmetric as well as public key cryptography algorithms that we would discuss are Data Encryption Standard (DES), Advanced Encryption Standard (AES) and Rivest, Shamir and Adleman (RSA). Audio Encryption Proposed Architecture:

The Length does not include the 8 byte chunk header. It simply tells you how many bytes of data are in the chunk following this header.

2.2 Track Format of Midi


The remainder of the file after the header chunk consists of track chunks. Each track has one header and may contain as many midi commands as you like. You may assign one track to each voice, each staff, each instrument or whatever you want.

JMUSIC
jMusic is a package of Java classes which provides an environment for non-real time music composition. jMusic is an open source package distributed under the GNU. It is being developed to support computer music making and the development of shared tools. We hope that this will encourage people to become a part of the jMusic community and contribute to, as well as benefit from, the development of jMusic. Any music created with jMusic is not itself covered by any licence and can be freely distributed or sold by the composer. Extensions to the jMusic language and application built using the jMusic libraries are subject to the Licence which, in short, requires that source code be freely available for other musicians to utilise and extend further. The music data structure is practical for analysis as well as composition, and jMusic reads and writes standard MIDI files to facilitate interaction with existing computer-based music systems. jMusic includes audio classes for sound synthesis, and signal processing. jMusic is not a scripting language but a direct extension of the Java programming language. This allows access to the full functionality of Java, including the ability to write applets for Internet usage, and for applications to be run unchanged on a wide range of platforms (even with graphical interfaces). jMusic is designed to be used as a compositional medium, therefore it is primarily designed for musicians rather than computer programmers.

Fig 1: Architecture of Audio Encryption An emerging field, Audio Encryption algorithms are still not widely famous. The proposed algorithm is made to achieve strong audio encryption.
We accept the audio file and a passkey from the user. In step 2 we divide the passkey as explained in detail in algorithm below. Step 3 is modifying the present values with the help of passkey Then we make group of values, shuffle them and place them back so as to increase security. Proposed Algorithm:

The proposed algorithm can be divided into 3 procedures. It requires a MIDI file to be encrypted and a passkey pk1 as input where Pk1 is of 80 bits and Each 8 bits refer to one alphanumeric character Procedure 1: Prepare audio file and Passkey Step1: Accept the audio file A. Step2: Accept passkey pk1. Step3: Divide passkey pk1 such that Pk1=sk1+sk2+sk3+sk4+sk5 //where each sk key is of 16 bit Step 4: End Procedure Procedure 2: Processing Step 1: For i = 0 to A.Length Val[i] = A[i] End For Step 2:F1=5 , F2=1 Step 3: For i = 0 to Val.Length if(F1==5) { if(F2==1) { Val[i]=+[Sum of digits of sk1]+sk5 F2=2; } else if(F2==2) { Val[i]=+[Sum of digits of sk2]+sk5 F2=3; } else if(F2==3) { Val[i]=+[Sum of digits of sk3]+sk5 F2=4; } else if(F2==4) { Val[i]=+[Sum of digits of sk4]+sk5 F2=1; F1=4; } } else if(F1==4) { if(F2==1) { Val[i]=+[Sum of digits of sk1]+sk4 F2=2; } else if(F2==2) { Val[i]=+[Sum of digits of sk2]+sk4 F2=3; } else if(F2==3) {

Val[i]=+[Sum of digits of sk3]+sk4 F2=5; } else if(F2==5) { Val[i]=+[Sum of digits of sk5]+sk4 F2=1; F1=3; } } else if(F1==3) { if(F2==1) { Val[i]=+[Sum of digits of sk1]+sk3 F2=2; } else if(F2==2) { Val[i]=+[Sum of digits of sk2]+sk3 F2=4; } else if(F2==4) { Val[i]=+[Sum of digits of sk4]+sk3 F2=5; } else if(F2==5) { Val[i]=+[Sum of digits of sk5]+sk3 F2=1; F1=2; } } else if(F1==2) { if(F2==1) { Val[i]=+[Sum of digits of sk1]+sk2 F2=3; } else if(F2==3) { Val[i]=+[Sum of digits of sk3]+sk2 F2=4; } else if(F2==4) { Val[i]=+[Sum of digits of sk4]+sk2 F2=5; } else if(F2==5) { Val[i]=+[Sum of digits of sk5]+sk2 F2=2; F1=1; } } else if(F1==1) {

if(F2==2) { Val[i]=+[Sum of digits of sk2]+sk1 F2=3; } else if(F2==3) { Val[i]=+[Sum of digits of sk3]+sk1 F2=4; } else if(F2==4) { Val[i]=+[Sum of digits of sk4]+sk1 F2=5; } else if(F2==5) { Val[i]=+[Sum of digits of sk5]+sk1 F2=1; F1=5; } } Step 4: End Procedure Procedure 3: Shuffling Step1: Take 16 values from the array in a 4*4 matrix

Step 4: If(!End of file) Got to step 1 End If Step 5: Write back the data to a new MIDI File Step 6: End Procedure

4.2. MIDI ENCRYPTION


The MIDI Encryption algorithm makes use of the JavaMusic or JMusic or JM API of the Java language, through which we can access different parts of the MIDI file (e.g., Scores, Part, Notes and Pitches of each Note). The MIDI Encryption algorithm just changes the value of pitch of each Note in the MIDI file, so that the file would not play the same notes as the original one. Thus the original composition is kept secret and can only be revealed to the ones who are authenticated.

Step 2:The four corner values are swapped with the inner corresponding diagonal values as follows

COMPARISON TABLE
Algorit hm
DES

Approach
It uses a 64 bit key out of which 56 bits are used for encryption and remaining 8 bits are used for parity. Works on blocks of 64 bits using 56 bit key. The 64 bit block passes through Initial Permutation (IP) which uses IP matrix followed by 16

Advanta ges
Easy to recover key. Takes less time for processing .

Limitati ons
More vulnerable as keys can be hacked. Easy to decrypt as compared to others algorithms .

Step 3: The remaining values are swapped with the corresponding non swapped neighbor as follows.

AES

rounds of the same function, which involves both permutation and substitution functions. After the 16th round, the left and right sides of the outputs are swapped to produce the preoutput. This output passes through inverse IP matrix. First round keys are derived from the cipher key using Rijndael's key schedule. Then Initial round where AddRoundKeyeach byte of the state is combined with the round key using bitwise XOR. Then Rounds of following are followed; SubBytes- a non-linear substitution step where each byte is replaced with another according to a lookup table. ShiftRows- a transposition step where each row of the state is shifted cyclically a certain number of steps. MixColumns- a mixing

RSA

Difficult to compromi se the algorithm. Provides higher level of security than DES.

Difficult to recover key. Processing time is more as compared to DES.

Novell Custom Algorith m

operation which operates on the columns of the state, combining the four bytes in each column. AddRoundKey. Then Final Round with all steps but no MixColumns is done. Encryption is done with the public key and decrypted with the private key The public key consists of the modulus n and the public (or encryption) exponent e. The private key consists of the modulus n and the private (or decryption) exponent d which must be kept secret. Encryption function: c = me (mod n). Decryption Function: m = cd (mod n). where e is 1 < e < (n) and gcd(e,(n)) = 1, i.e. e and (n) are coprime. (n) = (p1) (q1) and n = pq. Divides 80 bit key into 5 parts each of 16 bits, and then encrypts the file using the parts in a specific

Variable key size. Processing time depends on the size of the key.

Works on plain text only. Requires computing 2 different keys, private and public.

Works on encrypting a single byte at a time. Complexit y is less.

Processing time depends on the size of the file.

manner as seen in the description and then the output is shuffled. Thus this approach uses two stage, static as well as dynamic.

Uses static as well as dynamic encryption .

REFERENCES
http://www.ijcsit.com/docs/Volume %202/vol2issue4/ijcsit2011020443.pdf http://searchsecurity.techtarget.com/definition/encryptio n http://www.webopedia.com/TERM/E/encryption.html http://eprints.qut.edu.au/6805/1/6805.pdf

You might also like