Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura
Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura
Il primo Micro RGB di Samsung per il salotto è il 65 pollici da 2.749 euro. Sul banco di misura abbiamo rilevato 2.000 nit di picco, nero assoluto con il local dimming e il 91,4% del BT.2020, il colore più ampio che abbiamo misurato su un LCD
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre
Apple ha rinnovato iPhone 18 Pro soprattutto dentro: chip A20 Pro a 2 nm con memoria affiancata al SoC, camera di vapore tre volte più ampia, Dynamic Island più piccola del 25% grazie a Face ID sotto il display e fotocamera principale con diaframma variabile da f/1.48 a f/4. Lo abbiamo misurato al colorimetro e nei benchmark, usato con iOS 27 e messo alla prova in fotografia tra laghi, borghi e interni poco illuminati
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34
A Londra, per il trentennale dei Toughbook, Panasonic ha presentato il tablet G3 e il 2-in-1 34. Con Jon Tucker, a capo dell'ingegneria europea, abbiamo parlato di ciò che non si vede: batterie, antenne, porte seriali e accorgimenti nati sul campo
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 13-12-2008, 22:31   #1
Miky Mouse
Senior Member
 
L'Avatar di Miky Mouse
 
Iscritto dal: Mar 2002
Città: Roma
Messaggi: 4205
[JAVA] problema generazione chiave Diffie-Hellman

ho un client e un server che si scambiano (o dovrebbero scambiarsi) dati cifrati con DES... questo è quello che c'è prima, per generare una chiave.
solo che non funziona, anche se mi sono attenuto alla documentazione la doPhase solleva eccezione di InvalidKey dicendo che il parametro non è corretto.
ho ricontrollato ma non sembra un problema di trasmissione di dati, qualcuno potrebbe dirmi se il codice è corretto? (è preso in giro sul web e documentazioni varie)
il codice su client e server è lo stesso, questi si scambiano un oggetto serializzato con all'interno una variabile di tipo PublicKey (qui sotto ho semplificato il codice del send/receive tanto per far capire).
per ora mi basterebbe di stampare la chiave ottenuta...

Codice:
private void DiffieHellman(){

		String valuesInStr=genDHParams();
		String[] values = valuesInStr.split(",");
		BigInteger p = new BigInteger(values[0]);
		BigInteger g = new BigInteger(values[1]);
		int l = Integer.parseInt(values[2]);
		try {
			// Use the values to generate a key pair
			KeyPairGenerator keyGen = KeyPairGenerator.getInstance("DH");
			DHParameterSpec dhSpec = new DHParameterSpec(p, g, l);
			keyGen.initialize(dhSpec);
			KeyPair keypair = keyGen.generateKeyPair();

			// Get the generated public and private keys
			PrivateKey privateKey = keypair.getPrivate();
			PublicKey publicKey = keypair.getPublic();

			// Send the public key bytes to the other party...
			stream.writeObject(new Pacchetto(publicKey));

			// Retrieve the public key bytes of the other party
			Pacchetto pacchetto=(PublicKey)stream.readObject();
                        publicKey=pacchetto.publicKey;

			// Prepare to generate the secret key with the private key and public key of the other party
			KeyAgreement ka = KeyAgreement.getInstance("DH");
			ka.init(privateKey);
			ka.doPhase(publicKey, true);
			// Specify the type of key to generate;
			// see e458 Listing All Available Symmetric Key Generators
			String algorithm = "DES";

			// Generate the secret key
			SecretKey secretKey = ka.generateSecret(algorithm);

			// Use the secret key to encrypt/decrypt data;
			// see e462 Encrypting a String with DES
			System.out.println( "chiave calcolata "+secretKey.toString());

		} 
		catch (InvalidKeyException e) {System.out.println(e.toString());} 
		catch (InvalidAlgorithmParameterException e) {System.out.println(e.toString());
		} catch (NoSuchAlgorithmException e) {System.out.println(e.toString());
		} catch (IOException ex){	System.out.println(ex.toString());
		} catch (ClassNotFoundException ex){System.out.println(ex.toString());
		}
	}
	private static String genDHParams() {
		try {
			// Create the parameter generator for a 1024-bit DH key pair
			AlgorithmParameterGenerator paramGen = AlgorithmParameterGenerator.getInstance("DH");
			paramGen.init(1024);

			// Generate the parameters
			AlgorithmParameters params = paramGen.generateParameters();
			DHParameterSpec dhSpec
			= (DHParameterSpec)params.getParameterSpec(DHParameterSpec.class);

			// Return the three values in a string
			return ""+dhSpec.getP()+","+dhSpec.getG()+","+dhSpec.getL();
		} catch (NoSuchAlgorithmException e) {
		} catch (InvalidParameterSpecException e) {
		}
		return null;
	}
__________________
| Il mio blog |
Miky Mouse è offline   Rispondi citando il messaggio o parte di esso
Old 15-12-2008, 11:36   #2
Miky Mouse
Senior Member
 
L'Avatar di Miky Mouse
 
Iscritto dal: Mar 2002
Città: Roma
Messaggi: 4205
up...
__________________
| Il mio blog |
Miky Mouse è offline   Rispondi citando il messaggio o parte di esso
Old 15-12-2008, 15:18   #3
Miky Mouse
Senior Member
 
L'Avatar di Miky Mouse
 
Iscritto dal: Mar 2002
Città: Roma
Messaggi: 4205
risolto... se a qualcuno interessa il problema è che i parametri g,p,l usati per generare la chiave devono essere uguali sul client e sul server... come facevo io invece venivano generati diversamente
__________________
| Il mio blog |
Miky Mouse è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Samsung Micro RGB R95H, il primo LCD a LED rossi, verdi e blu di Samsung alla prova del banco di misura Samsung Micro RGB R95H, il primo LCD a LED rossi...
iPhone 18 Pro: la recensione del miglior iPhone compatto di sempre iPhone 18 Pro: la recensione del miglior iPhone ...
Panasonic, 30 anni di Toughbook: la "Bibbia" di mille regole dietro i nuovi G3 e 34 Panasonic, 30 anni di Toughbook: la "Bibbia...
realme C100x, lo smartphone economico con la batteria da 7500 mAh. La recensione realme C100x, lo smartphone economico con la bat...
Star Wars Zero Company è l'erede di XCOM 2 Star Wars Zero Company è l'erede di XCOM ...
L'hacker che ha attaccato l'FBI fermato ...
Meta ha trovato un modo per risparmiare ...
Il prossimo chip a 2 nm di Samsung potre...
La NFL arriva in Europa con i London Gam...
Uno sviluppatore ha usato iPhone come se...
L'AI di OpenAI scoperta a barare: GPT-6 ...
Gli utenti di ChatGPT potranno provare v...
Scende a 692€ Samsung Galaxy S26 256GB i...
Instagram ha lanciato un assistente IA p...
Samsung Galaxy S26 Ultra scontato di 500...
Samsung prepara il lancio di un nuovo Go...
Apple: John Ternus assume il controllo d...
PS5 Slim cambia ancora: Sony introduce u...
Cultura 'rotta' e sicurezza sotto accusa...
Android Auto, il nuovo lettore porta in ...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 08:28.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v