BAEL-4488 Create AvailableCiphers

This commit is contained in:
Reza Ebrahimpour 2020-09-15 11:12:24 +04:30
parent 12b3067cd2
commit 0976c32038
1 changed files with 32 additions and 0 deletions

View File

@ -0,0 +1,32 @@
package com.baeldung.cipher;
import java.security.Provider;
import java.security.Security;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
public class AvailableCiphers {
public static void main(String[] args) {
printAllCiphers();
printCompatibleCiphers();
}
private static void printAllCiphers() {
for (Provider provider : Security.getProviders()) {
for (Provider.Service service : provider.getServices()) {
System.out.println(service.getAlgorithm());
}
}
}
private static void printCompatibleCiphers() {
List<String> algorithms = Arrays.stream(Security.getProviders())
.flatMap(provider -> provider.getServices().stream())
.filter(service -> "Cipher".equals(service.getType()))
.map(Provider.Service::getAlgorithm)
.collect(Collectors.toList());
algorithms.forEach(System.out::println);
}
}