2017-04-08 4 views
3

J'ai vraiment eu du mal à essayer d'obtenir Bouncy Castle Scrypt dans mon application web pour le cryptage de mot de passe. Je suis assez nouveau pour programmer en Java et en sécurité.Comment implémenter Scrypt en Java?

J'ai essayé de regarder le documentation for their Scrypt class du Château Bouncy. Cependant, j'ai vraiment du mal à comprendre comment cela fonctionne. Il ne semble pas vraiment donner beaucoup d'informations sur la façon de créer la classe ou quelque chose comme ça. J'ai cherché autour de Stack Exchange et Google pour voir s'il y a n'importe où qui pourrait me donner un bon exemple de ce que je devrais faire pour créer cette classe. J'ai trouvé this question and answer, et je l'ai essayé sans créer de classe, mais cela ne semblait pas fonctionner non plus.

Pour couronner le tout, mon importation ne semble pas vouloir fonctionner non plus.

Ceci est tout le code que j'ai:

import org.bouncycastle.crypto.generators; 
public class SCrypt extends java.lang.Object { 

public Scrypt(){} 

public static byte[] generate(byte[] P,byte[] S,int N,int r,int p,int dkLen){ 

    } 


} 

Je veux utiliser Scrypt car il semble être le plus sûr dans le cryptage des mots de passe, mais il semble impossible de mettre en œuvre prochaine. Je suis très proche d'un PBKDF2, car il y a plus de documentation à ce sujet, mais j'espère que quelqu'un là-bas pourra m'aider à le faire.

+0

Scrypt consomme beaucoup de mémoire pour une application Web côté serveur. Bcrypt pourrait être un meilleur choix. – TheGreatContini

+2

Pourquoi créez-vous une autre classe 'Scrypt'? Vous avez juste besoin d'importer 'org.bouncycastle.crypto.generators.SCrypt', puis d'utiliser la méthode' generate': 'SCrypt.generate (parameters ...)'. Assurez-vous de télécharger les bouncycastle jars sur leur site (ou incluez-les dans votre 'pom.xml' si vous utilisez maven) –

Répondre

1

Merci Hugo pour les commentaires! Après beaucoup de lutte et de recherche, je trouve ce site: http://www.itcsolutions.eu/2011/08/22/how-to-use-bouncy-castle-cryptographic-api-in-netbeans-or-eclipse-for-java-jse-projects/

Cela m'a aidé à donner une étape par étape panne sur ce que je devais faire Bouncy Castle et en cours d'exécution sur mon ordinateur. J'espère que cela aidera les autres puisque j'ai lutté avec lui pendant si longtemps pour trouver quelque chose qui a brisé cela en termes simples. :)