티스토리 뷰
[JAVA] 일회용 패스워드 생성기(OTP Creator)
-내용-
Math.random() 함수를 이용하여 생성된 난수를 사용하여 일회용 패스워드를 생성하고 클립보드에 복사합니다.
import java.awt.Toolkit; import java.awt.datatransfer.Clipboard; import java.awt.datatransfer.StringSelection; import java.io.IOException; import java.util.Scanner; public class PwCreator { public static void main(String[] args) throws IOException { String pw = null; pw = getRandomPassword(12); String temp = null; Scanner scn = new Scanner(System.in); System.out.println("***************************"); System.out.println("**** PW Creator ****"); System.out.println("***************************"); //System.out.println(pw); StringSelection data = new StringSelection(pw); Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard(); clipboard.setContents(data,data); System.out.println("패스워드가 클립보드에 복사되었습니다.\n\nCtrl + V로 생성된 패스워드를 복사 후 프로그램을 종료하세요.\n!!프로그램 종료 시 생성된 패스워드는 사라집니다."); System.out.println("\n프로그램 종료 시 Enter 키를 입력하세요..."); temp = scn.nextLine(); scn.close(); } public static String getRandomPassword(int len) { char [] charSet = new char[] { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J', 'K', 'L', 'M', 'N', 'O', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z', '!', '@', '#', '$', '%', '^', '&', '*' }; int idx = 0; StringBuffer sb = new StringBuffer(); //System.out.println("charSet.length :::: " + charSet.length); charSet.length : 70 Character for (int i = 0; i < len; i++) { idx = (int) (charSet.length * Math.random()); sb.append(charSet[idx]); } return sb.toString(); } }
'Programming > JAVA' 카테고리의 다른 글
[JAVA] Switch Config Backup Program (0) | 2018.08.14 |
---|---|
외부 library(jar 파일) import 하여 JAVA 프로그램 실행시키기 (0) | 2018.08.14 |
댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- selinux 정책설정
- end 응모
- 피파온라인4
- 매치스패션 할인
- Java
- selinux 사용법
- 파워쉘 문자열 포함
- 웹쉘 탐지
- 조던1 사틴 블랙토 개봉기
- 파워쉘 문자열 포함 조건
- 이지 350 지브라
- 나이키 켄드릭라마
- 웹쉘 예방
- CloudStack
- 조던1 사틴
- selinux 설명
- linux bridge 설정
- 나이키 코르테즈
- 이지 부스트 700
- 리눅스 hostname 변경
- 파워쉘 문자열
- 웹쉘 해결
- troijan
- 조던1 사틴 블랙토
- 리눅스 모니터링
- 배트멍 할인
- 리니지m 격수 팁
- 이지 부스트 700 모브
- 케니4
- 이지 700 모브
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
글 보관함