IT정보뉴스

오픈 소스「통합 소프트웨어 시장」잠식해간다

선구적인 오픈 소스 기업인 J보스(JBoss)와 로직블레이즈(LogicBlaze)는 오픈 소스 제품이 고가의 백 엔드 소프트웨어를 잠식해가고 있음을 나타내려 하고 있다.오픈 소스 자바 애플리케이션 서버에 대한 지원 서비스를 판매하는 J보스는 「J보스 메시징(JBoss Messaging)」이라는 프로젝트의 자세한 내용을 밝혔다. J보스 메시징은 다른 머신 간의 메시지를 확실히 교환하기 위한 제품으로, 「자바 메시징 서비스(JavaMessaging Service)」의 버전1.1을 준수하고 있다.J보스에 의하면 J보스 메시징 소프트웨어는 2006년 내에 완성될 예정인 「J보스 애플리케이션 서버(JBoss Application Server 5.0)」와 「JBoss ESB 1.0」에 포함된다고 한다.다양하게 정의하고 있지만 ESB(Enterprise Service Bus)란 애플리케이션간에 데이터 전송, 데이터의 재포맷, 데이터 관리 기능을 제공하는 표준을 준수하는 서버 소프트웨어이다. 예를 들면 기업은 주문 관리 애플리케이션에서 송출된 주문 정보를, 재무 애플리케이션이 「읽을 수 있는」 문서 형식을 변경할 경우에 ESB를 이용할 수 있다.신생 기업 로직블레이즈도 통합 소프트웨어 시장을 목표로 아파치 재단(ApacheFoundation)의 오픈 소스 소프트웨어를 패키지화한 제품을 발표했다.로직블레이즈의 번들 제품 「LogicBlaze FUSE」는 「ActiveMQ」메시징 소프트웨어나 자바 비즈니스 인테그레인션(Java Business Integration) 표준에 준거한 「ServiceMix」라는 ESB 제품을 포함해 아파치에 제안 단계에 있는 제품을 조합한 것이다. 또 이 제품에는 「Ode」라는 제안 중인 프로젝트에서 개발할 예정인 「BusinessProcess Execution Language」규격에 준거한 서버 소프트웨어도 포함되어 있다.로직블레이즈의 최고 경영 책임자(CEO)인 윈스턴 다마릴로(Winston Damarillo)에 의하면 자사의 전략은 보다 저렴한 서비스를 제공하는 입장에서 IBM이나 BEA Systems와 같은 통합 소프트웨어 프로바이더가 확립해 있는 기반을 무너뜨리는 것이라고 한다.로직블레이즈에서는 지속적인 지원에서 소프트웨어의 업데이트까지, 서비스의 레벨에 따라 서버 1대당 년간 5000~1만 달러의 가격을 설정할 예정이라고 다마릴로는 말했다.@

데이터는 어떻게 정리되고 검색될까?

안녕하세요. LG CNS 대학생 기자단 6기 조서원입니다.이제는 뗄래야 뗄 수 없는 스마트폰! 스마트폰의 수많은 기능 중 여러분이 가장 자주 사용하는 기능은 무엇인가요? 저는 포털 사이트 검색어 순위를 확인하거나, 궁금한 정보를 찾아보고, 자료를 저장하는 등 인터넷을 많이 활용하고 있는데요. 그러던 어느 날 문득 내가 만들고, 찾아서 이용하는 수많은 데이터들이 어디에 저장되고, 어떻게 보이는가에 대한 원리가 궁금해졌습니다.  수많은 사람들이 생산해 내는 데이터들이 보이지 않는 어딘가에 저장되고 있을 텐데요. 이런 어마어마한 규모의 빅데이터가 어디에서 관리되고, 어떻게 검색 결과로 보이게 되는 것일까요?  그럼 지금부터 ‘빅데이터가 어떻게 처리되어서 검색 결과로 보이는가’에 대한 궁금증을 같이 해결해 보도록 하겠습니다.  빅데이터 분산 처리 기술, ‘Hadoop’먼저, 빅데이터를 처리, 분석할 때 가장 많이 사용되는 하둡(Hadoop)에 대해 알아볼까요? ① 하둡의 개념 하둡이란, 아파치 루씬 창시자인 미국 프로그래머 더그 커팅(Doug Cuting)이 2004년에 방대한 데이터 처리를 위해 구글의 맵리듀스(MapReduce) 등을 활용해 개발한 시스템으로, 저가의 서버와 하드디스크를 이용해 빅데이터를 상대적으로 쉽게 저장할 수 있는 분산형 파일 시스템입니다. 하둡 등장 이전 대용량 데이터는 슈퍼컴퓨터 등 고가의 장치를 이용해 처리되었습니다. 저장 공간이나 컴퓨팅 자원 부족, 높은 비용 소모에 대한 부담과 관련 기술, 엔지니어의 부족 등의 문제 때문에 기업들은 중요하다고 판단되는 데이터만 분석했는데요. 이로 인해 기존 데이터를 비용 대비 효율적으로 처리할 수 있는 방법론이 꾸준히 요구되었습니다.이 때 등장한 시스템이 ‘하둡’입니다. 하둡은 여러 개의 일반 컴퓨터를 하나의 컴퓨터인 것처럼 묶어 대용량 데이터를 처리하는 기술입니다. l Hadoop 로고 (출처: Hadoop 홈페이지)하둡은 수천 대의 분산된 장비들에 대용량 파일을 저장할 수 있는 기능을 제공하는 분산 파일 시스템(HDFS)과 저장된 파일 데이터를 분산된 서버의 CPU와 메모리 자원을 이용해 쉽고 빠르게 분석할 수 있는 컴퓨팅 플랫폼인 맵리듀스(MapReduce)1로 구성됩니다. 즉, HDFS에 데이터를 저장하고 맵리듀스를 이용해 데이터를 처리합니다. 이전까지 대용량 데이터를 저장하고 처리하기 위해 슈퍼컴퓨터를 썼다면, 하둡의 등장으로 일반 PC 10대를 하나의 슈퍼컴퓨터처럼 대규모 기억장치로 묶어 사용할 수 있어 비용 면에서 큰 절감 효과를 가져오게 되었습니다. 커팅은 이렇게 개발한 기술을 다른 개발자도 자유롭게 가져다 쓰고 발전시킬 수 있도록 소스 코드를 공개하고 있습니다. ② 하둡의 특징 뉴욕 증권거래소에서는 하루에만 1TB에 이르는 거래 데이터가 발생하고, 페이스북에는 30PB가 넘는 사진 DB가 쌓여 있습니다. 기업들은 이러한 빅데이터를 저장하기 위해서 비싼 외부 저장 장치 등을 사용하는 것보다 오픈 소스인 하둡을 사용하는 것이 비용 절감 등에서 유리하고, 설치 및 사용도 쉬워 많이 이용하고 있습니다. 또한, 전문가들은 하둡을 이용하면 빅데이터를 보다 원활하고 효율적으로 분석할 수 있다고 평가합니다. 하둡 프레임워크는 대용량 데이터를 값싸고 빠르게 분석할 수 있게 돕습니다.   기업은 하둡을 활용해 빅데이터 분석에 들어가는 초기 비용을 줄이면서 자사 데이터 시스템과의 호환 문제도 손쉽게 해결할 수 있습니다. 또한 기존에는 슈퍼컴퓨터를 며칠씩 돌려야 했던 데이터도 하둡을 이용하면 x86 서버로 실시간 분석이 가능합니다.한 예로, 페이스북은 데이터 중 일부인 30PB(미국 국회도서관에 저장된 정보량의 약 3배) 정도를 하둡에 저장한다고 합니다. 대용량 사진 데이터를 작은 데이터로 쪼개 약 2천여 개의 서버가 매 순간 데이터를 처리하기 때문에 사용자는 페이스북에 사진을 쉽게 올리고 받으며, 다른 사람의 페이스북 사진을 클릭과 동시에 볼 수 있습니다.뿐만 아니라, 사용하기 쉽고 편리하다는 장점은 하둡이 급속도로 퍼지는 데 기여했습니다. 조금만 익히면 사용할 수 있어 기업들은 하둡으로 PC를 병렬로 연결해 빅데이터를 분산 처리하는데 이용하기 시작했고, 편리한 사용자 분석과 사용자 지향의 새로운 서비스를 개발할 수 있게 지원하는 하둡의 기능에 주목했습니다.마지막으로, 하둡의 특징 중 하나는 메모리나 디스크를 공유하지 않는 다수의 머신에서 실행할 수 있다는 것입니다. 작은 조각으로 데이터를 나누어 그 조각을 배포하고 처리하며 원하는 대상 플랫폼에서 자동으로 결과를 병합 가능하기 때문에, 더욱 편리하게 어디서든 빅데이터 처리가 가능합니다.  고성능 오픈 소스(IR, Information Retrieval) 정보 검색 라이브러리 ‘Lucene'이번에는 하둡을 기반으로 제작되는 정보 검색 라이브러리 루씬(Lucene)에 대해 알아보겠습니다.l Lucene 로고 (출처: Lucene 홈페이지)① 루씬의 개념 하둡 개발자인 더그 커팅(Doug Cuting)에 의해 1999년 개발된 루씬은 자바로 개발된 확장 가능한 고성능 오픈 소스 정보 검색(IR, Information Retrieval) 라이브러리입니다. 대표적으로 색인 기능, 검색 기능, 다양한 나라의 Full Text 분석기 등의 기능을 지원합니다. 이것은 독립된 프로그램이 아니라 단순한 소프트웨어 라이브러리이기 때문에 개발자가 루씬 라이브러리를 이용해 검색 서비스, 애플리케이션 구현 후 사용할 수 있습니다. ② 루씬의 특징 원래 자바로 만들어진 루씬은 펄(Perl)에서 시작해 파이썬(Python), C++와 닷넷(.NET) 등의 언어로 포팅되어 있습니다. 이렇듯 루씬은 서로 다른 언어 간에도 색인 데이터를 100% 호환해서 사용할 수 있도록 설계되어 있습니다.또한 소프트웨어 프로그램에 색인과 검색 기능을 전문 지식이 없이도 간단하게 추가 가능해 IT 업계에서 많이 이용합니다. 추가적으로, 다양한 나라의 Full Text 분석기(Analyzer) 검색 엔진 기능이 특징적입니다. 개발자들은 색인 기능을 사용할 때, 단순한 문자열을 색인하기보다는 다양한 문서를 색인화하고 검색하는 작업을 합니다. 이때, 루씬을 이용해서는 임의의 바이너리 파일(Binary file)2을 직접 색인하고 검색할 수 없으며, 모두 문자열 형태로 변경된 후에 루씬으로 색인하고 검색할 수 있습니다. 따라서 XML, PDF, HTML, MS WORD 같은 다양한 문서들을 색인화하기 위해서는 각각의 문서를 루씬의 분석기가 이해할 수 있도록 해석(parse)해서 텍스트로 추출해 내는 과정이 필요합니다.이는 Full-Text(Contents)와 text를 단어로 쪼개는 방법(Analyzer)을 제시하면 알아서 인덱스를 구성해 주고 그것으로 빠른 검색 결과를 얻을 수 있기 때문인데요. 내용 검색을 위해 루씬을 사용하는 것이 효율적입니다. ③ 루씬 개발 사례 루씽을 인덱싱과 검색에 적용한 사례들은 아래와 같습니다.   오픈 소스 검색 엔진 ‘Nutch’그렇다면, 루씬을 기반으로 개발된 오픈 소스 검색 엔진 너치(Nutch)에 대해 알아볼까요?l Nutch 로고 (출처: Nutch 홈페이지) ① 너치의 개념 광고가 많은 인터넷 검색 사이트에서 상업적인 요소를 배제한 검색을 구성하고자 진행된 오픈 소스 인터넷 웹 검색 엔진 프로젝트인 너치는 루씬을 기반으로 하여 자바로 구현되었습니다. 이는 오픈 소스 검색 엔진이라는 점에서 기존 기업들의 접근 방식과 차이가 있습니다. 따라서 넛치 검색 엔진의 소스는 완전히 공개되고, 누구나 무료로 이를 자신의 응용 프로그램에 맞게 변형하거나 재사용하는 것이 자유롭습니다. ② 너치의 특징 루씬은 인덱서와 정보 검색사(Searcher)로 구성되어 있고, 루씬 기반의 공개 웹 검색 엔진인 너치는 루씬에 없는 웹 검색에 필요한 모든 기본 요소를 전부 갖춰 웹 검색 용으로 확장한 것인데요. 너치는 루씬을 이용하기 때문에 수억 개 이상의 웹 페이지를 모아 색인, 검색이 가능하며 모듈화가 잘 되어있어 여러 가지 플러그인을 붙일 수 있습니다. 또한 자바로 작성되어 있지만 자료는 특정 언어에 관계없는 형태로 저장할 수 있습니다.또한 하둡으로 구현하면 효율이 좋기 때문에 저장소 안에 자료가 많아 여러 대의 서버에서 동시에 구현, 가동할 수 있습니다. ③ 너치의 구조 너치의 전체적인 구조는 일반적인 웹 검색 시스템 구조와 유사합니다.너치를 이용한 검색 절차는 다음 순서와 같습니다. 웹 서버가 사용자의 검색 요청을 받음질의 핸들러(Request handler)가 검색어 가공 후 다수의 색인 검색 서버로 전달질의 핸들러가 넘긴 검색어에 대해 나온 여러 색인 서버에서 결과를 점수가 높은 순서로 정렬1~2초 후 결과를 주지 않는 색인 서버가 있으면 결과에 포함하지 않고 무시 (2초 안에 결과가 나오도록 보장) 기업 대상 검색 서버 ‘Solr’마지막으로, 너치(Nutch)가 확장된 기업 대상 검색 서버 솔라(Solr)를 소개하겠습니다.l Solr 로고 (출처: Solr 홈페이지) ① 솔라의 개념 솔라는 오픈 소스 검색 엔진인 루씬 프로젝트에 기반을 둔 엔터프라이즈 검색 서버로, 기업을 대상으로 더 다양하고 전문적인 기능을 추가하여 개발되었습니다. 이는 루씬을 기반으로 전체 텍스트 검색, 다면적인 검색, 실시간 인덱싱, 클러스터링, 데이터베이스 통합, 다양한 문서 처리 및 검색, 솔라 분산 인덱싱 등의 기능을 지원합니다.솔라는 모든 기능을 HTTP 프로토콜을 통해 제공하는데요. 여기에는 색인, 검색, 삭제, 업데이트뿐만 아니라 스키마 추가, 업데이트, 리플리케이션 등 모든 기능을 포함합니다. 또한 솔라는 POST와 GET을 이용해 색인을 관리하고 검색을 요청할 수 있습니다. HTTP 만으로 모든 작업을 할 수 있기 때문에, CURL 등의 도구를 이용해서 간단하게 검색 애플리케이션을 개발할 수 있다는 장점이 있습니다.  ② 솔라의 특징 솔라는 단독 애플리케이션 서버 형태로 작동하며, REST 형식의 API를 제공합니다. 문서들은 HTTP를 이용해 XML•Json•CSV•바이너리 등의 형태로 색인, 검색을 요청하고 결과를 받아올 수 있습니다.  ‘내가 필요한 자료들은 USB나 하드디스크에 저장하는데, 온라인에 올리는 사진이나 문서 파일들은 어디에 저장되는 걸까? 그리고 그 자료가 어떻게 검색 엔진에서 보이는 걸까?’라는 작은 질문에서 시작하여 이에 대한 원리와 기술에 대해 조사하게 되었습니다. 그동안 간편하게 사용해왔던 기능들이 수많은 개발자들에 의해 끊임없이 논의되고, 업데이트 되고 있기에 사용 가능했던 것을 알게 되었는데요. 점점 데이터가 증가하고, 세분화되면서 추가되고 있는 새로운 기능들도 많았습니다.이번 조사를 계기로 앞으로는 유용하게 사용하고 있는 기능들의 원리에 대해 한 번 더 생각하고 이용할 수 있을 것 같습니다. 그리고 주어진 기능을 수동적으로만 사용하기보다는, 개선점을 찾을 수 있도록 능동적으로 기술을 대하려는 태도와 생각의 변화가 생기게 되었습니다.여러분도 평소에 이용하던 기능이나 기술의 원리가 궁금한 적이 있다면, 지금 한 번 검색해 보세요. 원리를 알면 더 유용하게 사용하실 수 있을 것입니다!출처: http://blog.lgcns.com/1176 [Creative and Smart! LG CNS]

최근 등록된 자바스크립트 소스

사진 설명
사진

WeBuzz.IM web messenger provides both online web messenger and offline web messenger.

Download WeBuzz.IM Web Messenger for OfflineWeBuzz.IM web messenger provides both online web messenger and offline web messenger.This "Offline WeBuzz.IM Web Messenger" enables you using WeBuzz.IM's instant messaging proxy services without visiting WeBuzz.IM's websites. You only need to download the offline web messenger, extract and open index.html page in your browser. You can login and chat with your friends as normally as on WeBuzz.IM's websites.This offline web messenger will help those users whose networks have blocked WeBuzz.IM's websites from using WeBuzz.IM's web messenger services.Click the following link to start downloading:WeBuzz.IM Offline Web Messenger v20101223 (485k, for PC and Mac, not for mobile phone)In cases the above link is not accessible, you can download WeBuzz.IM offline web messenger from the following mirrors:WeBuzz.IM Offline Web Messenger (Mirror site 1)WeBuzz.IM Offline Web Messenger (Mirror site 2)WeBuzz.IM Offline Web Messenger (Mirror site 3)WeBuzz.IM Offline Web Messenger (Mirror site 4)WeBuzz.IM Offline Web Messenger (Mirror site 5)WeBuzz.IM Offline Web Messenger (Mirror site 6)WeBuzz.IM Offline Web Messenger (Mirror site 7)WeBuzz.IM Offline Web Messenger (Mirror site 8)WeBuzz.IM Offline Web Messenger (Mirror site 9)About WeBuzz.IM Web Instant MessengerWeBuzz.IM is an online free web instant messenger that helps you chat with your friends on Google Talk, Windows Live Messenger, Yahoo! Messenger, Facebook Chat, AIM, ICQ or Jabber/XMPP. WeBuzz.IM team is dedicating to build web IM services with better security, accessibility and user experience.To use WeBuzz.IM, all you need is a modern browser, like Firefox 3.0+ (Recommended), Google Chrome 3.0+ (Recommended), IE 6.0+, Opera 9.0+ or Safari 3.1+. You can use WeBuzz.IM anywhere, Windows/Linux PC, Mac, home or office behind firewall.- Powered by Java2Script

사진

ActiveX 없이 보안메일을 열어보자! - 자바스크립트 메일 보안 솔루션

FAQ 자주 하는 질문 이게 뭔가요? Xeit는 금융기관들이 보내주는 거래명세서 등의 보안메일을 인터넷 익스플로러가 아닌 사파리나 크롬, 파이어폭스에서도 열어볼 수 있게 해주는 서비스입니다. 왜 필요한거죠? 국내에서 사용하는 대다수의 보안메일은 윈도의 인터넷 익스플로러에 ActiveX 플러그인을 설치해야만 볼 수 있도록 되어 있습니다. 다른 OS나 브라우저를 사용하는 사람들은 볼 수 있는 방법이 없었지요. 어떻게 보는거죠? 인터넷 익스플로러가 아닌 브라우저에서 보안메일의 첨부파일을 열어보면 빈 화면 또는 플러그인 설치 안내 화면이 나오는 것을 많이 보셨을 거에요. 이 상태에서 브라우저에 등록해놓은 Xeit 북마클릿을 누르면 비밀번호 입력 화면이 등장하면서 보안메일을 읽을 수 있게 됩니다. 설치는 어찌하죠? 일단 웹 브라우저 상단에 북마클릿을 넣을 수 있는 공간이 있는지 확인해보세요. 사파리에서는 책갈피 막대(Bookmarks Bar), 크롬에서는 북마크바(Bookmarks Bar), 파이어폭스에서는 북마크 도구모음(Bookmarks Toolbar)이라고 부르는 곳입니다. 맥이라면 ⌥ + ⌘ + B를 눌러서 확인해볼 수도 있습니다. 그 다음에는 아래의 버튼을 끌어 넣으면 됩니다. 이 버튼을 브라우저 상단의 책갈피에 끌어 넣으세요! 어디서 쓸 수 있죠? 맥에서 사파리(6)를 기준으로 만들었으며 크롬(26)과 파이어폭스(20)에서도 돌아가는 것을 확인하였습니다. 인터넷 익스플로러에서는 확인해보지 못 했네요. 참고로 크롬에서는 직접 북마클릿을 설치하거나 눌러줄 필요 없이 확장 프로그램으로 보다 쉽고 편리하게 이용할 수 있습니다. 믿을 수 있나요? 설치된 북마클릿을 실행하면 기능을 불러오기 위해 인터넷 연결이 필요하기는 하지만 보안메일 해제를 위한 모든 연산은 브라우저 내에서 순수 JavaScript 기반으로 이루어집니다. 입력하신 비밀번호와 해제된 메일 내용은 브라우저 외부로 유출되지 않으니 걱정하지 않으셔도 됩니다. 참고로 모든 코드는 GitHub에 공개되어 있습니다. 어디어디 볼 수 있죠? 대표적인 보안메일 플러그인의 형식을 대부분 지원하지만, 발송기관별로도 조금씩 다른 관계로 아직 확인되지 않은 곳들이 많습니다. 일단 아래 목록 외에는 막아놓은 상태인데요. 최대한 빨리 확인하여 추가하겠습니다. 발송기관 플러그인 세부유형 알고리즘 지원여부 비고 BC카드 INISAFE Mail INITECH SEED, SHA1, MD5 농협, 우리은행 등 CJ헬로모바일 INISAFE Mail ? ? 확인필요 KB국민카드 XecureExpress PKCS#7 SEED, SHA1 KT INISAFE Mail INITECH SEED, SHA1, MD5 유선 (QOOK) KT JX-Mail Enterprise DSMail RC4, SEED, MD5 무선 (SHOW) LG U+ XecureExpress ? ? LIG손해보험 XecureExpress PKCS#7 DES, SHA1 MG손해보험 INISAFE Mail ? ? 확인필요 NH농협카드 INISAFE Mail PBKDF2 SEED, HMAC-SHA1 SKT INISAFE Mail PBKDF2 / INITECH SEED, HMAC-SHA1 / MD5 SK증권 INISAFE Mail PBKDF1 SEED, SHA1 확인필요 The-K손해보험 INISAFE Mail ? ? 확인필요 국민연금공단 XecureExpress PKCS#7 DES, SHA1 국세청 XecureExpress PKCS#7 RC2, SHA1 교보생명 INISAFE Mail ? ? 확인필요 대신증권 MailDec - SEED 동부화재 INISAFE Mail ? ? 확인필요 동양생명 XecureExpress PKCS#7 DES, SHA1 롯데멤버스카드 XecureExpress ? ? 미래에셋생명 XecureExpress PWD DES, SHA1 병무청 JX-Mail Enterprise DSMail RC4, SEED, MD5 DRM 플러그인 필요 산업은행 INISAFE Mail INITECH SEED, SHA1, MD5 삼성생명 XecureExpress PKCS#7 DES, SHA1 DRM 플러그인 필요? 삼성카드 XecureExpress PWD DES, SHA1 신한생명 INISAFE Mail ? ? 확인필요 신한은행 INISAFE Mail INITECH SEED, SHA1, MD5 신한카드 XecureExpress PWD DES, SHA1 외환은행 XecureExpress PKCS#7 / PWD SEED, HMAC-SHA1 / DES, SHA1 일부 오류발생 우리은행 XecureExpress PWD SEED, SHA1 확인필요 푸르덴셜생명 INISAFE Mail ? ? 확인필요 하나SK카드 INISAFE Mail PBKDF1 SEED, SHA1 하나카드 INISAFE Mail PBKDF1 SEED, SHA1 확인필요 하나은행 XecureExpress PWD SEED, SHA1 한국씨티은행 INISAFE Mail ? ? 확인필요 한국투자증권 XecureExpress PKCS#7 DES, SHA1 한화생명 INISAFE Mail ? ? 확인필요 한화손해보험 INISAFE Mail PBKDF2 SEED, SHA1 현대해상 INISAFE Mail ? ? 확인필요 현대카드 XecureExpress PWD SEED, SHA1 흥국화재 INISAFE Mail ? ? 확인필요 Gmail에서 안 열려요. Gmail 웹에서는 HTML 첨부파일을 열 때 ActiveX 호출 태그를 모두 제거해버리기 때문에 아무런 내용을 가져올 수 없습니다. 따라서 첨부파일을 다운로드하여 직접 열어주셔야 합니다. IMAP/POP3 등으로 별도의 메일 클라이언트를 사용하시는 경우에는 상관 없을 거예요. 좀 더 알고 싶어요. 궁금한 점이나 하고 싶은 말씀들은 이슈로 올려주시거나 @tomyun으로 연락주세요.

사진

Javascript 암호화 하기

Javascript 로 암호화 할 일이 생겨서 Search 중 발견 했다.※ github - https://github.com/tomyun/crypto-js보통 서버에서 암호화 작업을 하거나, SSL 을 사용 하는대 어쩔 수 없이 암호화 를 하는 점도 있는거 같다.단방향 암호화 알고리즘 사용에는 편리 한것 같다. 적용 방법소스 다운 후 아래와 같이 적용 한다. 다른 알고리즘을 사용할 경우 다른 js를 사용 한다.<script type="text/javascript" src="/core.js"></script> <script type="text/javascript" src="/sha256.js"></script> CryptoJS.SHA256('test').toString() 출처: http://blog.whitelife.co.kr/177 [White Life Story]CryptoJSThis repository is a mirror of crypto-js from Google Code. Its full history has been converted with svn2git, yet it is not guaranteed to track more recent changes. Other than that, several branches have been created for working on some extra stuffs.SEEDSEED-128 is a block cipher which shows extensive and exclusive use in South Korea. It features a so-called Feistel network seemingly not very different from other predecessors like DES. If necessary, various options including IV, block modes, and/or padding, can be specified as original CryptoJS syntax.<script src="https://rawgithub.com/tomyun/crypto-js/seed-3.1.2/build/rollups/seed.js"></script> <script> var encrypted = CryptoJS.SEED.encrypt("Message", "Secret Passphrase"); var decrypted = CryptoJS.SEED.decrypt(encrypted, "Secret Passphrase"); </script>CP949CP949 is a character encoding for Korean language. In the current UTF-8 era, it still has widespread adoption among many domestic corporate sites. In short, there are plenty of seed-encrypted packets whose source is in CP949. Be cautious of its insane filesize: ~170 kB<script src="https://rawgithub.com/tomyun/crypto-js/seed-3.1.2/src/enc-cp949.js"></script> <script> var words = CryptoJS.enc.CP949.parse('?沮d'); var cp949 = CtyptoJS.enc.CP949.stringify(words); </script>PBKDF1PBKDF1 is a key derivation function superseded by more robust PBKDF2. While any supported hash functions can be used, keys longer than the hash digest cannot be derived.<script src="https://rawgithub.com/tomyun/crypto-js/xeit-3.1.2/build/rollups/pbkdf1.js"></script> <script> var salt = CryptoJS.lib.WordArray.random(128/8); var sha1 = CryptoJS.algo.SHA1; var key = CryptoJS.PBKDF1("Secret Passphrase", salt, { keySize: 128/32, hasher: sha1, iterations: 1000 }); </script>RC2RC2 is a block cipher whose details were kept secret for a decade. Although it has been superseded by many other recent algorithms, there are some legacy systems still dependent on. The effective key length is 32 bits by default, while it can be specified up to 1024 bits.<script src="https://rawgithub.com/tomyun/crypto-js/xeit-3.1.2/build/rollups/rc2.js"></script> <script> var encrypted = CryptoJS.RC2.encrypt("Message", "Secret Passphrase", { effectiveKeyBits: 64 }); var decrypted = CryptoJS.RC2.decrypt(encrypted, "Secret Passphrase", { effectiveKeyBits: 64 }); </script>