Bonjour,
on va se connecter à un de mes sites par une url avec des paramètres
cryptés.
On me fournit donc un fichier .java qui contient le code des fonctions
d'encodage et de verif mais faisant une allergie terrible au java, je
ne me sens pas de convertir ça en Wlangage.
Mes questions sont :
Puis je utiliser ce code en natif ?
si oui comment avoir un .class à partir de ce .java (javacharge) ?
Ou mettre ce fichier (dans le _WEB)?
Sinon, y'aurait-il une bonne âme pour me convertir ce code en wlangage
?
Merci de vos réponses.
--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Roumegou Eric
Roumegou Eric avait soumis l'idée :
Bonjour, on va se connecter à un de mes sites par une url avec des paramètres cryptés.
On me fournit donc un fichier .java qui contient le code des fonctions d'encodage et de verif mais faisant une allergie terrible au java, je ne me sens pas de convertir ça en Wlangage.
Mes questions sont : Puis je utiliser ce code en natif ? si oui comment avoir un .class à partir de ce .java (javacharge) ? Ou mettre ce fichier (dans le _WEB)?
Sinon, y'aurait-il une bonne âme pour me convertir ce code en wlangage ?
Merci de vos réponses.
J'espère que vous allez pouvoir m'aider. Je teste d'abord sous WD11 ce qui est quand mème plus facile.
J'ai récupéré un fichier .java avec les fonctions (voir fin msg). j'ai téléchargé un jdk, puis fait un javac de ce.java pour obtenir un .class j'ai copié le .class UrlEncoderHelper.class dans le rep Exe
dans une fenêtre test, je fais en init de la fenetre javaCharge(fRepExe) cela me retourne Vrai. Jusque là on peut penser que c'est bon non ?
dans mon bouton CRYPT_OUT=JavaExecuteFonction("UrlEncoderHelper","checkClientAllowed",javaChaîne,CRYPT_IN)
et là ça plante en me disant qu'il ne trouve pas la classe Java UrlEncoderHelper.
Alors j'ai vu l'histoire du package, et j'ai réessayé avec CRYPT_OUT=JavaExecuteFonction("com.monclient.report.helper/UrlEncoderHelper","checkClientAllowed",javaChaîne,CRYPT_IN)
Mais avec la mème erreur. Difficile de savoir ce qui se passe ?? Est-ce le import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; que je n'ais pas et qui plante le .class ? Pourtant je n'ais pas d'erreur à la compil (javac) et cela doit faire partie du jdk ça non ? Est ce que ce n'est pas la bonne syntaxe ?
/** * Convert a byte[] array to readable string format. This makes the "hex" readable! * @return result String buffer in String format * @param in byte[] buffer to convert to string format */ private static String byteArrayToHexString(byte in[]) { byte ch = 0x00; int i = 0; if (in == null || in.length <= 0) return null;
while (i < in.length) { ch = (byte) (in[i] & 0xF0); // Strip off high nibble ch = (byte) (ch >>> 4); // shift the bits down ch = (byte) (ch & 0x0F); // must do this is high order bit is on! out.append(pseudo[ (int) ch]); // convert the nibble to a String Character ch = (byte) (in[i] & 0x0F); // Strip off low nibble out.append(pseudo[ (int) ch]); // convert the nibble to a String Character i++; } String rslt = new String(out); return rslt; }
public static String checkClientAllowed(String encodedNumClient) { String numClient = null;
if (encodedNumClient.length()<2) return null;
String sig = encodedNumClient.substring(0, 32); numClient = Integer.parseInt (encodedNumClient.substring(32), 16)+"";
if (!byteArrayToHexString(getKeyedDigest(numClient.getBytes(), SECRET_KEY)).toUpperCase().equals(sig.toUpperCase())) return null; else return numClient; } }
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)
Roumegou Eric avait soumis l'idée :
Bonjour,
on va se connecter à un de mes sites par une url avec des paramètres cryptés.
On me fournit donc un fichier .java qui contient le code des fonctions
d'encodage et de verif mais faisant une allergie terrible au java, je ne me
sens pas de convertir ça en Wlangage.
Mes questions sont :
Puis je utiliser ce code en natif ?
si oui comment avoir un .class à partir de ce .java (javacharge) ?
Ou mettre ce fichier (dans le _WEB)?
Sinon, y'aurait-il une bonne âme pour me convertir ce code en wlangage ?
Merci de vos réponses.
J'espère que vous allez pouvoir m'aider. Je teste d'abord sous WD11 ce
qui est quand mème plus facile.
J'ai récupéré un fichier .java avec les fonctions (voir fin msg).
j'ai téléchargé un jdk, puis fait un javac de ce.java pour obtenir un
.class
j'ai copié le .class UrlEncoderHelper.class dans le rep Exe
dans une fenêtre test, je fais en init de la fenetre
javaCharge(fRepExe)
cela me retourne Vrai. Jusque là on peut penser que c'est bon non ?
dans mon bouton
CRYPT_OUT=JavaExecuteFonction("UrlEncoderHelper","checkClientAllowed",javaChaîne,CRYPT_IN)
et là ça plante en me disant qu'il ne trouve pas la classe Java
UrlEncoderHelper.
Alors j'ai vu l'histoire du package, et j'ai réessayé avec
CRYPT_OUT=JavaExecuteFonction("com.monclient.report.helper/UrlEncoderHelper","checkClientAllowed",javaChaîne,CRYPT_IN)
Mais avec la mème erreur.
Difficile de savoir ce qui se passe ??
Est-ce le
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
que je n'ais pas et qui plante le .class ? Pourtant je n'ais pas
d'erreur à la compil (javac) et cela doit faire partie du jdk ça non ?
Est ce que ce n'est pas la bonne syntaxe ?
/**
* Convert a byte[] array to readable string format. This makes the
"hex" readable!
* @return result String buffer in String format
* @param in byte[] buffer to convert to string format
*/
private static String byteArrayToHexString(byte in[])
{
byte ch = 0x00;
int i = 0;
if (in == null || in.length <= 0)
return null;
while (i < in.length)
{
ch = (byte) (in[i] & 0xF0); // Strip off high nibble
ch = (byte) (ch >>> 4);
// shift the bits down
ch = (byte) (ch & 0x0F);
// must do this is high order bit is on!
out.append(pseudo[ (int) ch]); // convert the nibble to a
String Character
ch = (byte) (in[i] & 0x0F); // Strip off low nibble
out.append(pseudo[ (int) ch]); // convert the nibble to a
String Character
i++;
}
String rslt = new String(out);
return rslt;
}
public static String checkClientAllowed(String encodedNumClient)
{
String numClient = null;
if (encodedNumClient.length()<2)
return null;
String sig = encodedNumClient.substring(0, 32);
numClient = Integer.parseInt (encodedNumClient.substring(32),
16)+"";
if (!byteArrayToHexString(getKeyedDigest(numClient.getBytes(),
SECRET_KEY)).toUpperCase().equals(sig.toUpperCase()))
return null;
else
return numClient;
}
}
--
Eric Roumégou
Webmaster des wtablettes
http://cerbermail.com/?qE7t4Qvilo
(cliquez sur le lien ci-dessus pour me contacter en privé)
Bonjour, on va se connecter à un de mes sites par une url avec des paramètres cryptés.
On me fournit donc un fichier .java qui contient le code des fonctions d'encodage et de verif mais faisant une allergie terrible au java, je ne me sens pas de convertir ça en Wlangage.
Mes questions sont : Puis je utiliser ce code en natif ? si oui comment avoir un .class à partir de ce .java (javacharge) ? Ou mettre ce fichier (dans le _WEB)?
Sinon, y'aurait-il une bonne âme pour me convertir ce code en wlangage ?
Merci de vos réponses.
J'espère que vous allez pouvoir m'aider. Je teste d'abord sous WD11 ce qui est quand mème plus facile.
J'ai récupéré un fichier .java avec les fonctions (voir fin msg). j'ai téléchargé un jdk, puis fait un javac de ce.java pour obtenir un .class j'ai copié le .class UrlEncoderHelper.class dans le rep Exe
dans une fenêtre test, je fais en init de la fenetre javaCharge(fRepExe) cela me retourne Vrai. Jusque là on peut penser que c'est bon non ?
dans mon bouton CRYPT_OUT=JavaExecuteFonction("UrlEncoderHelper","checkClientAllowed",javaChaîne,CRYPT_IN)
et là ça plante en me disant qu'il ne trouve pas la classe Java UrlEncoderHelper.
Alors j'ai vu l'histoire du package, et j'ai réessayé avec CRYPT_OUT=JavaExecuteFonction("com.monclient.report.helper/UrlEncoderHelper","checkClientAllowed",javaChaîne,CRYPT_IN)
Mais avec la mème erreur. Difficile de savoir ce qui se passe ?? Est-ce le import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; que je n'ais pas et qui plante le .class ? Pourtant je n'ais pas d'erreur à la compil (javac) et cela doit faire partie du jdk ça non ? Est ce que ce n'est pas la bonne syntaxe ?
/** * Convert a byte[] array to readable string format. This makes the "hex" readable! * @return result String buffer in String format * @param in byte[] buffer to convert to string format */ private static String byteArrayToHexString(byte in[]) { byte ch = 0x00; int i = 0; if (in == null || in.length <= 0) return null;
while (i < in.length) { ch = (byte) (in[i] & 0xF0); // Strip off high nibble ch = (byte) (ch >>> 4); // shift the bits down ch = (byte) (ch & 0x0F); // must do this is high order bit is on! out.append(pseudo[ (int) ch]); // convert the nibble to a String Character ch = (byte) (in[i] & 0x0F); // Strip off low nibble out.append(pseudo[ (int) ch]); // convert the nibble to a String Character i++; } String rslt = new String(out); return rslt; }
public static String checkClientAllowed(String encodedNumClient) { String numClient = null;
if (encodedNumClient.length()<2) return null;
String sig = encodedNumClient.substring(0, 32); numClient = Integer.parseInt (encodedNumClient.substring(32), 16)+"";
if (!byteArrayToHexString(getKeyedDigest(numClient.getBytes(), SECRET_KEY)).toUpperCase().equals(sig.toUpperCase())) return null; else return numClient; } }
-- Eric Roumégou Webmaster des wtablettes http://cerbermail.com/?qE7t4Qvilo (cliquez sur le lien ci-dessus pour me contacter en privé)