public IMessage decrypter(IMessage crypte, String key) {
		/*
		 * Lecture de la clef, puis dcodage des caractres un par un par
		 * des oprations elementaires
		 */
		String keyAdaptee=this.adapter(key);
		long d=new Date().getTime();
		int k;
		char[] c=new char[crypte.taille()];
		for(int i=0;i<crypte.taille();i++) {
			k=keyAdaptee.charAt(i%keyAdaptee.length())-65;
			if(crypte.getChar(i)>=65 && crypte.getChar(i)<=90) {
				if((crypte.getChar(i)-65-k)<0) {
					c[i]=(char)(65+26+((crypte.getChar(i)-65-k)));
				}
				else {
					c[i]=(char)(65+((crypte.getChar(i)-65-k)));
				}
			}
			else {
				if(crypte.getChar(i)>=97 && crypte.getChar(i)<=122) {
					if((crypte.getChar(i)-97-k)<0) {
						c[i]=(char)(97+26+((crypte.getChar(i)-97-k)));
					}
					else {
						c[i]=(char)(97+((crypte.getChar(i)-97-k)));
					}
				}
				else{
					c[i]=crypte.getChar(i);
				}
			}
		}
		this.time=new Date().getTime()-d;
		return Fabrique.fabriquerMessage(c);
	}