Intellectual Property: - Defined as the property resulting from the fruits of mental labor
- Owner of IP can protect it through copyright Laws
Plagiarism: - Is the appropriating or imitating of another’s ideas and claiming them as your own.
- In terms of software plagirism becomes less clear because of colloaboration in the creation process
- All work done should be acknowledged
Copyright Laws: - Copyright laws are in place to safeguard the intellectual property rights of the authors
- Provides economic incentives for creative activity.
- -Copyright doesn’t protect you against another software developer making a similar program
Licence Conditions: - Single User Licence allows customer to make one installation and one backup. Sometimes more may be permitted
- Site licences permit organisations to install the site licences on a large number of computers
- Multi-user licences similar to site licences but have a set number of computers allowed to be accessed.
Shareware: - Shareware is covered by copyright and you require a licence to use the product
- Purchasers are allowed to make and distribute copies of the software
- Once a user has tested and decided to use it, it must be purchased
Public Domain: - Software becomes public domain when the copyrights holder relinquishes all rights to the software
- Software in the public domain must be clearly marked as such.
- Developing new works based on the product is allowed without restriction
Open Source: - Covered by copyright laws but removes many traditional copyrights.
- Source code is available to all to modify and redistribute.
- Modified products must be released using the same licence.
- Open source encourages the collaborative development of software
Ownership versus licensing: - Ownership implies you have rights to do as you wish the property.
- Licensing agreements specify the framework in which the program may be used
- Licensing software prevents users modifying the program without the consent of the author
Reverse engineering: - Analyzing a product and its parts to understand how it works
- Then recreate the original product with the same or a similar design.
- Reverse Engineering entails....
- Analysing a product and its components to understand the inner workings, then creating a replica with similar/same design.
- This would require access to the hardware, database and networks which the system uses.
- A clean-room approach can be used, where one team reverse engineers the product and the describe it to another team without referencing any actual code, who then develops another application using this description.
- This is legal in Australia.
Decompilation: - Opposite of compilation
- Translates the machine executable to higher-level code.
- Allows the design to be easily understood
Useful Links
Technologies to combat software piracyDisk copy protection - Prevented software copying by not allowing certain features of the software to become unusable
- Over time pirates have been able to identify the disk protection method
- Protection technologies have advanced bt they have been cracked fairly rapidly.
Hardware Serial Numbers - Software reads embedded serial numbers in the hardware.
- This serial number can be read and compared to the number stored in the executable code and will not run if they do not equal
Site Licence Installation Counter on a Network - In larger organisations software is installed via network server
- This network server has a installation counter utility
- When this counter goes over the specified number in the license, the server will refuse to install
Registration Code - A registration code is used to activate products during the initial stage in the installation process
- For single registration the code is unique, for site or multi-users the code is shared
- Most registration codes today, are either generated or verified over the internet
- If registration fails, the product will usually have limited functionality or stop working after a set amount of time
Encryption Code - Effectively scrambles the executable code and will only be decrypted via a decryption code
- When the software is connected to the internet, the decryption key is sent to the user and decrypts the executable
Back to Base Authentication: - Validates the application by contacting the software publishers server and checking if the user has a valid licence
- May be used for everytime it is run or just during installation
- For software that requires internet connection, excellent way for authentication
|
|