소프트웨어를 쇼핑 플랫폼에서 판매해보려 합니다. 가정상 판매자 A씨는 사업자 등록이 되어 있지 않으며, Windows에서 실행 가능한 소프트웨어를 제작하는 과정과 보안 시스템을 설계하는 방식을 설명하겠습니다.
소프트웨어는 다음과 같은 방식으로 개발됩니다:
✅ Node.js로 주요 기능을 구현
✅ Electron.js를 활용하여 데스크톱 애플리케이션으로 변환
✅ Windows에서 실행 가능한 형태(.exe)로 배포

판매자는 소프트웨어를 보호하기 위해 AWS Lambda 기반의 보안 시스템을 구축합니다.
1️⃣ 사용자가 소프트웨어 실행 → AWS Lambda에서 핵심 코드 호출
2️⃣ 최초 실행 시 라이선스 키 입력 요구 → 정품 사용자 검증
3️⃣ 라이선스 키 검증 후 소프트웨어 정상 작동

✅ 소비자가 쇼핑 플랫폼에서 구매 요청
✅ 판매자가 구매 요청을 확인하고 라이선스 키를 생성
✅ 라이선스 키를 AWS Lambda 서버에 등록 (미리 저장하거나 동적으로 생성 가능)
✅ 결제가 완료되면 판매자가 소비자에게 소프트웨어 다운로드 링크와 라이선스 키 제공
이 방식은 판매자가 소프트웨어의 핵심 코드를 탈취당하거나 불법 복제 당하지 않도록 보호할 수 있습니다.
소비자는 인터넷 연결이 필요하며 AWS Lambda에서 인증 과정을 거쳐야 합니다.
소프트웨어의 핵심 코드를 안전하게 보호하기 위해 AWS Lambda + API Gateway + S3 조합을 사용합니다.
Lambda는 서버 없이 코드 실행이 가능한 클라우드 서비스입니다.
기존 서버를 운영하려면 도메인 구매, 24시간 서버 유지, 서버 임대 비용이 필요하지만, Lambda는 AWS에서 자동으로 서버를 실행하므로 이를 해결할 수 있습니다.
Lambda 함수를 실행하려면 API Gateway를 사용하여 URL을 생성해야 합니다.
웹사이트처럼 URL을 통해 Lambda 함수에 접근하여 핵심 코드를 불러옵니다.
라이선스 키 및 기타 데이터를 저장할 공간으로 AWS S3를 활용합니다.
Lambda는 자체적으로 파일을 저장할 수 없으므로 S3를 사용하면 데이터를 영구적으로 관리할 수 있습니다.
✔ 소프트웨어 판매 시 불법 복제 및 코드 탈취를 방지하기 위해 AWS Lambda를 활용
✔ API Gateway를 통해 코드 실행 경로를 제공하고, S3에서 라이선스 키를 저장
✔ 소비자는 인터넷 연결을 통해 정품 인증을 진행하며, 판매자는 안전하게 소프트웨어를 제공
Imagine an individual seller, Mr. A, who is not officially registered as a business, attempting to sell software on an online shopping platform. Here’s how they can develop and secure the software while selling it safely.
The software is developed as follows:
✅ Node.js for core functionalities
✅ Electron.js to create a desktop application
✅ Packaged as a Windows executable file (.exe)
To prevent unauthorized duplication and code theft, the seller implements AWS Lambda as a security layer.
1️⃣ User launches the software → Requests core functions from AWS Lambda
2️⃣ License key input required on first run → Ensuring authorized use
3️⃣ Once verified, the software runs normally
✅ Consumer places an order on the shopping platform
✅ Seller verifies the purchase request and generates a license key
✅ License key is registered in AWS Lambda (pre-stored or dynamically created)
✅ After payment is confirmed, the seller provides the software download link and license key
This approach prevents unauthorized replication or code theft, ensuring secure software distribution.
💡 Internet connection is mandatory for the software to fetch code from AWS Lambda.
To secure software execution, a Lambda + API Gateway + S3 setup is used.
Lambda enables serverless execution without the need for a dedicated server infrastructure.
Traditionally, hosting a server requires domain registration, 24/7 uptime maintenance, or renting an online server, but Lambda eliminates these burdens by running code dynamically via AWS.
To run Lambda functions, API Gateway provides a URL endpoint.
Much like web pages that require URLs for access, Lambda functions are invoked through API Gateway-generated URLs.
License keys and essential stored data are managed via AWS S3, which enables:
✅ Persistent storage for license keys and execution-related data
✅ Data retrieval by Lambda functions
✔ AWS Lambda prevents software piracy by securing code execution
✔ API Gateway enables function routing, and S3 stores licensing information
✔ Consumers verify their license key online before executing the software