From owner-freebsd-questions@FreeBSD.ORG Wed Oct 12 10:42:45 2005 Return-Path: X-Original-To: freebsd-questions@freebsd.org Delivered-To: freebsd-questions@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3A18416A420 for ; Wed, 12 Oct 2005 10:42:45 +0000 (GMT) (envelope-from jcm@FreeBSD-uk.eu.org) Received: from xenial.mcc.ac.uk (xenial.mcc.ac.uk [130.88.203.16]) by mx1.FreeBSD.org (Postfix) with ESMTP id CBA6743D45 for ; Wed, 12 Oct 2005 10:42:44 +0000 (GMT) (envelope-from jcm@FreeBSD-uk.eu.org) Received: from dogma.freebsd-uk.eu.org ([130.88.200.97]) by xenial.mcc.ac.uk with esmtp (Exim 4.51 (FreeBSD)) id 1EPe4I-000Mns-C0 for freebsd-questions@freebsd.org; Wed, 12 Oct 2005 11:42:42 +0100 Received: from dogma.freebsd-uk.eu.org (localhost [127.0.0.1]) by dogma.freebsd-uk.eu.org (8.13.1/8.13.1) with ESMTP id j9CAgfsb034194 for ; Wed, 12 Oct 2005 11:42:42 +0100 (BST) (envelope-from jcm@dogma.freebsd-uk.eu.org) Received: (from jcm@localhost) by dogma.freebsd-uk.eu.org (8.13.1/8.12.6/Submit) id j9CAgfMe034193 for freebsd-questions@freebsd.org; Wed, 12 Oct 2005 11:42:41 +0100 (BST) Date: Wed, 12 Oct 2005 11:42:41 +0100 From: Jonathon McKitrick To: freebsd-questions@freebsd.org Message-ID: <20051012104241.GA34129@dogma.freebsd-uk.eu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.4i Subject: Implementing software licensing in FreeBSD X-BeenThere: freebsd-questions@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: User questions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 12 Oct 2005 10:42:45 -0000 Setting aside opinions on copy protection and licensing, suppose I wanted to implement such a scheme. The key itself might be a network license, or an encrypted file containing license info and system-specific info. But the real issue is how to protect the code that accesses the key. I know that 'wrappers' don't have much of an application in Unix, and are actually impractical. But what techniques could be implemented within a library or archive that would make it difficult for someone to trace the algorithm and/or make changes to the code to remove the protection checks? jm --