/* * To change this license header, choose License Headers in Project Properties. * To change this template file, choose Tools | Templates * and open the template in the editor. */ package com.redhat.gss.tfonteyn.bouncycastle; import java.io.IOException; import java.io.PrintWriter; import java.security.Provider; import java.security.Security; import javax.crypto.Cipher; import javax.servlet.ServletException; import javax.servlet.annotation.WebServlet; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.bouncycastle.jce.provider.BouncyCastleProvider; /** * * @author tom */ @WebServlet(name = "bc", urlPatterns = {"/bc"}) public class bc extends HttpServlet { /** * Processes requests for both HTTP GET and POST methods. * * @param request servlet request * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs */ protected void processRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/html;charset=UTF-8"); String msg = ""; int row = 0; try (PrintWriter out = response.getWriter()) { out.println(""); out.println(""); out.println(""); out.println("Servlet bc"); out.println(""); out.println(""); try { row = Security.addProvider(new BouncyCastleProvider()); out.println("

Added as nr " + row + "

"); for (Provider p : Security.getProviders()) { out.println("" + p.getName() + "
"); } Cipher cipher = Cipher.getInstance("AES", "BC"); out.println("cipher:" + cipher.getAlgorithm() + "
"); } catch (Exception e) { out.println("" + e.toString() + "
"); e.printStackTrace(); } out.println("

" + msg + "

"); out.println(""); out.println(""); } } // /** * Handles the HTTP GET method. * * @param request servlet request * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs */ @Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request, response); } /** * Handles the HTTP POST method. * * @param request servlet request * @param response servlet response * @throws ServletException if a servlet-specific error occurs * @throws IOException if an I/O error occurs */ @Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { processRequest(request, response); } /** * Returns a short description of the servlet. * * @return a String containing servlet description */ @Override public String getServletInfo() { return "Short description"; }// }