Microsoft MVP성태의 닷넷 이야기
정품 라이센스 인증 개발에 대해 조언을 구하고 싶습니다 [링크 복사], [링크+제목 복사]
조회: 11551
글쓴 사람
배동선 (dsnation at naver.com)
홈페이지
첨부 파일
 

프로그램 설치 시(혹은 설치 후 최초 실행시) 사용자가 배포자가 정해준 정품 인증키(시리얼 넘버)를 입력하도록 하고
 
입력된 인증키를 암호화된 파일로 가지고 있다가 설치된 프로그램을
 
실행할 때마다 타 사용자와의 중복을 확인하게 하는걸 만들고 싶습니다

즉 정품 라이센스 인증 개발을 하고 싶은데

어떻게 해야 할지 막막하네요

조언을 좀 구하고 싶습니다...








[최초 등록일: ]
[최종 수정일: 8/13/2012]


비밀번호

댓글 작성자
 



2012-08-13 01시57분
[배동선] 또한 문자열이나 혹은 파일을 암호화할때
주로 어떤 방식을 많이 사용하나요?
[guest]
2012-08-13 02시52분
"실행할 때 마다 타 사용자와의 중복을 확인"한다는 것이 구체적으로 어떤 의미인가요? A 라는 사용자가 인증키로 소프트웨어를 2대의 컴퓨터에 설치한 경우, 동시에 실행하지 못하도록 만들고 싶다는 것인가요? 제 생각으로는, 그런 경우라면 별도의 '인증서버'를 마련해야 하지 않을까 싶은데요.

문자열/파일 암호화는, 해당 컴퓨터에서만 암/복호화를 해야 할 필요가 있다면 DPAPI 를 쓰고, 그렇지 않은 경우라면 비대칭키 알고리즘으로 암호를 관리하고 해당 암호를 이용하여 대칭키 알고리즘으로 암호화를 합니다.
정성태
2012-08-14 12시53분
[배동선] 컴퓨터의 설치 수는 상관없이 하나의 시리얼 넘버의 최초 등록된 사용자
즉 정품을 구매하고 인증을 받은 사람에게만 사용할 수 있게 하고 싶은 것이죠
시리얼 넘버를 서버의 DB에서 관리하고... 이런 느낌?

비대칭키 알고리즘으로 암호를 관리하고 해당 암호를 이용하여 대칭키 알고리즘으로 암호화를 합니다.
라고 하셨는데 암호화를 2번 한다는 얘기 인가요? 비대칭키로 한번 암호화하고 그 결과를 다시 대칭키로 암호화??
무슨 말인지 이해가 잘 안가네요
[guest]
2012-08-14 01시44분
재미있는 요구사항이군요. ^^ "컴퓨터의 설치 수는 상관없다"는 것은 몇 대의 컴퓨터에 설치되어도 무방하다는 것을 의미하는 건데, 정작 "정품을 구매하고 인증을 받은 사람에게만 사용" 할 수 있게 하겠다는 것은 그 라이선스가 "사람"에게 붙어있다는 것인데... 이것이 가능할까요? 정품인증 사용자가 회사에서 쓰는 컴퓨터와 집에서 쓰는 컴퓨터, 그리고 누군가 시리얼 번호를 알고 있는 사람이 쓰는 컴퓨터를 구분할 기준이 있을까요?

일단, 위의 요구사항은 소프트웨어만으로 가능하지는 않습니다. 이런 경우를 위해 어떤 제품의 경우에는 USB 장치를 소프트웨어와 함께 판매합니다. 그래서, 사용자가 소프트웨어는 여러대에 설치할 수 있지만 그것을 실행하기 위해서는 USB 장치를 해당 컴퓨터에 연결주어야 합니다. 아마도 배동선님도 이런 경우에 해당할 것 같습니다.

그리고, 암호화 관련해서는 ^^ 숙제입니다.
정성태

1  2  3  4  5  6  [7]  8  9  10  11  12  13  14  15  ...
NoWriterDateCnt.TitleFile(s)
5777감사합니...12/29/20223478UI Thread에 Invoke 처리관련 궁금합니다. [3]
5776pdf맨12/28/20223289C# MouseUp Event + pdf [10]
5775민성12/28/20223059안녕하세요 Class 관련해서 예외처리를 하나로 받아낼수 있는 방법 [1]
5774중급12/27/20223834중급개발자란 어느 수준인지요? [4]
5773김영식12/26/20223402c# 압축파일 읽어 올 때 BinaryRead 한글 처리 문제 [1]
5772눈송이12/26/20223501Excel VSTO 는 왜 Net Core, Net 5, 6 버전을 사용하지 않나요? [2]
5771김훈12/26/20223609c# .net client application 망분리(내부망,외부망) 환경에서 의문의 외부사이트 호출 대기 [2]
5770lsh12/26/20223202클라우디움안에 있는 파일을 File.Copy 하고싶은데 코드로는 접근을 못하나요? [1]
5769울타리12/20/20223271Active Directory 2012R2 2016 또는 2019 마이그렝션 문의 드립니다. [1]
5768c++12/14/20224033Thread를 사용한 C++ DLL에 관련된 질문입니다. [6]파일 다운로드2
5767민성12/9/20223371안녕하세요 ashx로 화일을 저장하고 화일명을 리턴하는데요 [1]
5766김명훈12/9/20223523웹브라우저에서 묻지 않고 바로 다운로드 [2]
5765hong12/1/20223746Winform(.Net6) 클라이언트에서 SignalR Core 웹서버에 접속시 인증서 문제 [3]파일 다운로드1
5764요한11/30/20223967c++ 동일한 객체인지 비교 방법문의 [2]
5763고필석11/30/20223459시작하자마자 비정상 종료하는 프로세스에 대한 문제 해결 조언 요청 드립니다. [3]
5762흰털너부리11/30/20223449wpf mvvm ui update 로딩중 표시 [1]
5761민성11/29/20223346죄송하지만 한가지만 더 여쭈어 보겠습니다 [1]
5760민성11/29/20223282안녕하세요 [2]
5759문정환11/28/20223617c# socket 통신할때 빅엔디언으로 바꿔줘야 하나요? [1]
5758라떼11/28/20224797Linux 에서 winform UI 어플리케이션 실행하기 [3]
5757흰털너부리11/25/20223769asp.net core EF AddDbContext,AddDbContextFactory 차이점 알려주세요 [1]
5756흰털너부리11/25/20223351asp.net core web api에서 json 특정 property 무시하는 방법 문의 드립니다. System.Text.Json 사용중입니다. [1]
5755문정환11/24/20223709싱글스레드 프로그램도 컨텍스트 스위칭이 생길 수 있나요? [4]
5754초급11/24/20223560c# 소켓통신 [1]
5753흰털너부리11/24/20223365List와 ObservableCollection을 비교 해서 다른 값 추출 FirstOrDefault 객체 비교 [4]파일 다운로드1
5752푸헐11/15/20223500app.config 에 connectionStrings를 aspnet_regiis로 enctyption [4]
1  2  3  4  5  6  [7]  8  9  10  11  12  13  14  15  ...