반응형
반응형
자바에서 사용하는 MD5 예제입니다. 예제1은 바이트로 전송할때 사용되는 소스코드 예제2는 간단하게 C드라이브에 test.txt 생성 후 임의의 텍스트를 넣어 테스트 해볼 수 있는 소스코드 ■ 예제1 import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; import org.apache.commons.codec.binary.Base64; public class MD5Utils { /** *메시지 다이제스트 알고리즘 *128비트 해쉬값 생성, 단방향 암호화 *같은 입력값이면 항상 같은 출력값 *다른 입력값에서 같은 출력값이 나올 확률은 낮음 0은 아님 *현재는 네트워크로 전송된 큰 파일의 무결성 확인 */ publ..
메시지 다이제스트(Message Digest) 알고리즘 중 MD5에 대해 간단하게 정리해봅니다. ■ MD5 (Message Digest algorithm5) 1. 설명 - 데이터 무결성을 보장할 수 있는 알고리즘- 임의의 길이값을 입력 받아서 128비트 길이의 해시값을 출력하는 알고리즘- 단방향 암호화( 같은 입력값 → 같은 출력값, 서로 다른 입력 → 서로 다른 출력값으로 같은 출력값이 나올 확률은 0이 아니나 극히 낮은 확률 )- 고속 연산이 가능- 공개키, 비밀키 시스템보다 계산시간이 적음- 패스워드 암호화로 사용됬으나 현재는 FTP 파일 검증에 많이 사용되고 있음 2. 종류- MD2 : 128비트 해쉬값 생성 / MD5와 비슷하지만 안전도↓ 속도↓- MD5 : 128비트 해쉬값 생성 / MD2에 ..
스프링프레임워크의 두번째 장점인 AOP(Aspect Oriented Programming)기능을 한번 알아보겠습니다. AOP는 관점지향프로그래밍이라 불리며 구글번역기로 돌리면 가로지향프로그래밍이라 뜨는데 가로지향이라 외우시는게 머리속에 기억 남으실겁니다. 밑에서 AOP 구조를 그림으로 설명하게 될텐데 설명전에 왜 관점지향이 아니라 가로지향을 자꾸 언급하는지 아시게 될거에요. 먼저 AOP 기능을 스프링에서 지원하는게 왜 장점일까요?? 제 나름대로 한가지를 예로 들어 보겠습니다. 은행과 같이 보안이 1순위인곳에서 프로그램을 짜는데 각 클래스파일마다 보안기능을 넣을라면 얼마나 귀찮을지 상상이 됩니다. 물론 꼭 넣어야 할 곳만 몇개 추가한다면 상관없겠지만 보안기능만을 갖추고 있는 모듈을 하나 만들어 공통적으로 ..
이번 포스팅에서는 자바에서 사용되는 필드와 메소드등을 보호하는 보안과 관련된 접근 제한자에 대해 정리할 시간입니다. 접근 제한자는 모든 접근을 허용하는 public부터 시작해서 차례대로 protected, default(friendly), private 이렇게 4가지 종류가 있는데요. 공부를 하면서 이번 접근 제한자를 대충 넘어간다면 나중에 프로젝트를 만들때 큰 혼란이 와서 클래스의 선언부터 꼬일테니 꼭 짚고 넘어가야되는 중요한 부분입니다. 별표 다섯개 쾅쾅 ★★★★★ ■ 접근 제한자(Access Modifier)접근을 제한한다라는 뜻을 모르는 사람은 없습니다. 하지만 무엇 때문에 어떤 접근을 제한하는지를 알려고 하면 머리가 좀 아파옵니다. 기본적으로 소규모의 프로그램을 만들게 되면 딱히 중요할것 같지 ..