login
Forgot?
Login with Facebook

Don't have an account? Register one now!

License key generator

Bids 
6
Avg Bid
$679 USD
CLOSED
  • Project ID:

    735002
  • Project Type:

    Fixed
  • Budget:

    $250-$750 USD

Project Description:

Overview
========

The license key generator is part of a licensing application. It takes a registration number as an input along with a public key and generates a license number which is then encrypted with the provided public key and signed with a private key. This is the license file. The key pair are openssl RSA keys.

Target system
=============

The application will have an easy to use GUI and will be coded in python. It will also have nogui option to allow it to be used from the command line and to be scripted. The application is meant to be cross platform. The encryption can either be done with openssl python library or using Python/C bindings and code from a provided companion application.

Registration number
===================

The registration number is provided in the form of an encrypted file. The application will decrypt the file using a private RSA key (no passphrase), and the resulting ascii string will be as follows:

Nr ethernet interfaces:MAC0:...:MACn:Nr CPUS:CPU0 family,model:CPUn family,modelNr PCI devices::PCI0 device id:PCIn device id

License number generator
========================

The application will add to this string the number of licensed channels and the number of days the license is valid for:

Nr ethernet interfaces:MAC0:...:MACn:Nr CPUS:CPU0 family,model:CPUn family,modelNr PCI devices::PCI0 device id:PCIn device id:Nr channels:Nr validity days

This string will then be encrypted with the application's public key. Once signed this becomes the license file.

The encryption will happen using some provided C code from a companion application. It is important that the license file can be decrypted by this companion application.

Optionally, the application needs to have a way to manage key pairs, generation, addition, deletion, revocation (through the generation of a key generation certificate), export and selection of the default key pair. The only key pairs supported are openssl style RSA style. The companion C application uses openssl as encryption library, so either a compatible library or Python/C bindings need to be used. This optional element can be quoted separately.

An example usage follows:

Usage : ldlicensor [-n] [-r reg_number] [-k public_key] [-g key_name] [-R key_name] [-e key_name] [-o output_path] [-v] [-h]
Generates an encryped system fingerprint.

-n Run without the GUI and parse command line options
-r Registration number file.
-k Absolute path to the provided public key.
-g Generate a new key pair with the provided name.
-R Revoke the specified key.
-e Export the specified key.
-d Delete the specified key.
-o Optional absolute output path.
-v enable verbose mode.
-h This help

Deleted keys are deleted from the application but are not deleted from the backend database so that they can be retrieved is needed. Features not implemented will need to be stubbed out.

All operation on keys require a passphrase. The revocation certificate is created when the key pair is created and the revocation of a key is the only operation that is allowed without a passphrase.

The backend database must be open source, MySQL, SQLite or similar. Probably a lightweight database is better suited for this than MySQL.

Deliverables
============

1.The tested source code in python.
2.The mysqldump equivalent of the database structure.
3.A short design document including information regarding the design decisions made and the test process undertaken. It will include a database schema including relationships.

Limitations
===========

Installation on Linux is compulsory, and Windows installion needs to be considered and quoted separately. As part of the installation the chosen database will be installed (if not in the system already) and the database created.
Python libraries and the choice of database needs to be agreed in terms of documentation, stability and maintenance.
It is desirable that the source code is well documented and formatted with a code formatter.

Terms
=====

The application will be developed prioritizing design, simplicity, cleanness and quality.
The development will take place on http://lindusembedded.codebasehq.com/.
On delivery, Lindus Embedded will test the application reviewing it against this specification. Deviations from the specification will be corrected at no extra charge.
The quoted price will be effective on project acceptance.

Skills required:

Computer Security, Linux, MySQL, Python, User Interface / IA

Project posted by:

lindusembedded Spain
(0 Reviews)

Last seen:

Public Clarification Board

2 messages

  • railmedia

    Dear Sir/Madame,

    We are glad to see that we can help you with your project. We are a Romanian web design agency providing high quality services for our national and international clients.

    Our top projects:

    www.rallyrom.ro
    www.railhardware.ro
    www.alinmarginean.ro
    www.amtuk.com
    http://newslettercitroen.mediacentre.ro
    www.haisaplecam.ro
    www.cafealaterasa.ro
    www.reduceriinmall.ro
    www.mediacentre.ro (Login with username: admin at admin.com and password: 1234)
    www.slabesteusor.ro

    Please let us know if you are willing to work with us so we can place a bid. In the amount we will bid we want to provide full support for you and your project as well as any modifications brougth to our work after completion, all this in order for you to be fully satisfied.

    Please give us a chance to prove our capabilities and technical experience.

    All the best,

    Liviu Ciobanu

    over 1 year ago

  • adaschevici

    Does the app need to be fully written in python. Is it ok to use other libs in developing, such as pyqt or anything similar?

    over 1 year ago


If you are the project creator or one of the bidders, please Log In for more options.


Awarded Bids

RLamy France
RLamy
France From France     Offline
 Accepted
$700 in 15 days 
0
over 1 year ago
0.0

0.0

0 Reviews
0% Completion Rate
Hello, please see PM for details.

All Bids ()

agstech123 India
logo.jpg
agstech123
India From India     Offline
  Foundation Freelancer.co.uk Member
  Foundation LimeExchange Member
$725 in 20 days 
$145 Milestone Requested
over 1 year ago
5.0

4.0

1 Review
65% Completion Rate
Hi, please check PMB to know more about our technical expertise and capabilities. Regards, Ricku Lohar
pbq China
pbq
China From China     Offline
$750 in 30 days 
$225 Milestone Requested
over 1 year ago
4.5

2.2

2 Reviews
50% Completion Rate
Please check your PM.
hyddyh Russian Federation
hyddyh
Russian Federation From Russian Federation     Offline
$650 in 20 days 
$260 Milestone Requested
over 1 year ago
Please, have a look at our opensource project at http://code.google.com/p/oriolus. In this project we used gpg to sign and verify packages. So we built an utility with similar functionality, but without db support. Als... more
Please, have a look at our opensource project at http://code.google.com/p/oriolus. In this project we used gpg to sign and verify packages. So we built an utility with similar functionality, but without db support. Also I have experience in adding licensing functionality to commercial .net application (C#). Thank you in advance! less
pedroribeiro Brazil
pedroribeiro
Brazil From Brazil     Offline
$750 in 42 days 
0
over 1 year ago
I would deliver weekly builds so that you can closely follow my work.
antel19 United Kingdom
viewlogo.png
antel19
United Kingdom From United Kingdom     Offline
$500 in 7 days 
$250 Milestone Requested
over 1 year ago
0.0

0.0

2 Reviews
11% Completion Rate
i have a team of six programmers and computer security experts who are ready to work as soon as possible, please award the contract to me.