Claims
- 1. A method for controlling access to a certain functionality of a first software, the method comprising the steps of:
receiving, at the first software, a key associated with at least one desired functionality of the first software, wherein the key is provided by a second software; verifying the key; and allowing the second software to access the at least one desired functionality when the key is verified.
- 2. The method as in claim 1, further comprising the step of prohibiting the second software from accessing the at least one desired functionality when the key is unverified.
- 3. The method as in claim 1, wherein the at least one desired functionality includes a binary service tier.
- 4. The method as in claim 3, wherein the at least one desired functionality includes a binary service tier and a customer added service tier.
- 5. The method as in claim 1, wherein the at least one desired functionality includes a customer added service tier.
- 6. The method as in claim 1, further including the step of receiving, at the first software, an identifier representative of the at least one desired functionality from the second software.
- 7. The method as in claim 6, wherein the key and the identifier are received at the first software via an application programming interface.
- 8. The method as in claim 6, wherein the step of verifying the key includes:
generating a verification key based at least in part on the identifier; comparing the key with the verification key; and wherein the key is verified based on the comparison.
- 9. The method as in claim 8, wherein the key is verified when the key matches the verification key and the key is unverified when the key is different from the verification key.
- 10. The method as in claim 1, wherein the first software includes binary code.
- 11. The method as in claim 1, further comprising the steps of:
generating the key associated with the desired tier of functionality; and providing the key to a developer of the second software for use by the second software.
- 12. The method as in claim 1, wherein the key is generated based at least in part on an identifier representative of the at least one desired functionality.
- 13. A system for controlling access to at least one functionality of a first software, the system comprising:
a key verification module being adapted to verify a key provided by a second software, the key being associated with at least one desired functionality of the first software to be used by the second software; a tier functionality application programming interface (API) being adapted to interface with the second software to provide the at least one desired functionality to the second software; and a tier access control module operably connected to the key verification module and the tier functionality API and being adapted to direct the tier functionality API to allow the second software to access the at least one desired functionality of the first software when the key is verified by the key verification module.
- 14. The system as in claim 13, wherein the tier access control module is further adapted to direct the tier functionality API to prohibit access to the at least one desired functionality by the second software when the key is unverified by the key verification module.
- 15. The system as in claim 13, wherein the at least one desired functionality includes a binary service tier.
- 16. The system as in claim 15, wherein the at least one desired functionality includes a binary service tier and a customer added service tier.
- 17. The system as in claim 13, wherein the at least one desired functionality includes a customer added service tier.
- 18. The system as in claim 13, wherein the key verification module is adapted to verify the key based at least in part on an identifier provided by the second software, the identifier being associated with the at least one desired functionality.
- 19. The system as in claim 18, wherein the key verification module is adapted to verify the key by:
generating a verification key based at least in part on the identifier; comparing the key with the verification key; and wherein the key is verified when the key based on the comparison.
- 20. The system as in claim 19, wherein the key is verified when the key matches the verification key and the key is unverified when the key is different from the verification key.
- 21. The system as in claim 13, wherein the first software includes binary code.
- 22. A computer readable medium for controlling access to at least one functionality of a first software, the computer readable medium comprising a set of instructions being adapted to manipulate a processor to:
receive, from a second software, a key associated with at least one desired functionality of the first software; verify the key; and allow the second software to access the at least one desired functionality of the first software when the key is verified.
- 23. The computer readable medium as in claim 22, further comprising the instructions to manipulate the processor to prohibit the second software from accessing the at least one desired functionality of the first software when the key is unverified.
- 24. The computer readable medium as in claim 22, wherein the at least one desired functionality includes a binary service tier.
- 25. The computer readable medium as in claim 24, wherein the at least one desired functionality includes a binary service tier and a customer added service tier.
- 26. The computer readable medium as in claim 22, wherein the at least one desired functionality includes a customer added service tier.
- 27. The computer readable medium as in claim 22, wherein the set of instructions further includes instructions adapted to manipulate the processor to receive an identifier associated with the at least one desired functionality from the second software.
- 28. The computer readable medium as in claim 27, wherein the instructions adapted to manipulate the processor to verify the key include instructions to manipulate the processor to:
generate a verification key based at least in part on the identifier; compare the key with the verification key; and wherein the key is verified based on the comparison.
- 29. The computer readable medium as in claim 28, wherein the key is verified when the key matches the verification key and the key is unverified when the key is different from the verification key.
- 30. The computer readable medium as in claim 22, wherein the first software includes binary code.
- 31. The computer readable medium as in claim 22, wherein the set of instructions further comprise instructions to manipulate the processor to:
generate the key associated with the at least one desired functionality; and provide the key to a developer of the second software for use by the second software.
- 32. The computer readable medium as in claim 31, wherein the key is generated based at least in part on an identifier associated with the at least one desired functionality.
- 33. In a network gateway of a distributed communications network, a system for controlling access to at least one functionality of a first software of the network gateway, the system comprising:
a key verification module being adapted to verify a key provided by a second software, the key being associated with at least one desired functionality of the first software to be used by the second software; a tier functionality application programming interface (API) being adapted to interface with the second software to provide the at least one desired functionality of the first software to the second software; and a tier access control module operably connected to the key verification module and the tier functionality API and being adapted to direct the tier functionality API to allow the second software to access the at least one desired functionality when the key is verified by the key verification module.
- 34. The system as in claim 33, wherein the tier access control module is further adapted to direct the tier functionality API to prohibit access to the at least one desired functionality by the second software when the key is unverified by the key verification module.
- 35. The system as in claim 33, wherein the key verification module is adapted to verify the key based at least in part on an identifier provided by the second software, the identifier being associated with the at least one desired functionality.
- 36. The system as in claim 35, wherein the key verification module is adapted to verify the key by:
generating a verification key based at least in part on the identifier; comparing the key with the verification key; and wherein the key is verified based on the comparison.
- 37. The system as in claim 36, wherein the key is verified when the key matches the verification key and the key is unverified when the key is different from the verification key.
- 38. The system as in claim 33, wherein the first software includes one of a group consisting of:
an embedded web server, an operating system, and a network protocol stack.
- 39. The system as in claim 33, wherein the first software includes binary code.
- 40. An operating system comprising:
a key verification module being adapted to verify a key provided by software external to the operating system, the key being associated with at least one desired functionality of the operating system to be used by the external software; a tier functionality application programming interface (API) being adapted to interface with the external software to provide the at least one desired functionality of the operating system to the external software; and a tier access control module operably connected to the key verification module and the tier functionality API and being adapted to direct the tier functionality API to allow the external software to access the at least one desired functionality of the operating system when the key is verified by the key verification module.
- 41. The operating system as in claim 40, wherein the tier access control module is further adapted to direct the tier functionality API to prohibit access to the at least one desired functionality of the operating system by the external software when the key is unverified by the key verification module.
- 42. The operating system as in claim 40, wherein the key verification module is adapted to verify the key based at least in part on an identifier provided by the external software, the identifier being associated with the at least one desired functionality.
- 43. The operating system as in claim 42, wherein the key verification module is adapted to verify the key by:
generating a verification key based at least in part on the identifier; comparing the key with the verification key; and wherein the key is verified based on the comparison.
- 44. The operating system as in claim 43, wherein the key is verified when the key matches the verification key and the key is unverified when the key is different from the verification key.
- 45. The operating system as in claim 40, wherein the operating system is implemented in customer premises equipment in a communications network.
- 46. A network protocol stack comprising:
a key verification module being adapted to verify a key provided by a component external to the network protocol stack, the key being associated with at least one desired functionality of the network protocol stack to be used by the external component; a tier functionality application programming interface (API) being adapted to interface with the external component to provide the at least one desired functionality of the network protocol stack to the external component; and a tier access control module operably connected to the key verification module and the tier functionality API and being adapted to direct the tier functionality API to allow the external component to access the at least one desired functionality of the network protocol stack when the key is verified by the key verification module.
- 47. The network protocol stack as in claim 46, wherein the tier access control module is further adapted to direct the tier functionality API to prohibit access to the at least one desired functionality of the network protocol stack by the external component when the key is unverified by the key verification module.
- 48. The network protocol stack as in claim 46, wherein the key verification module is adapted to verify the key based at least in part on an identifier provided by the external component, the identifier being associated with the at least one desired functionality.
- 49. The network protocol stack as in claim 48, wherein the key verification module is adapted to verify the key by:
generating a verification key based at least in part on the identifier; comparing the key with the verification key; and wherein the key is verified based on the comparison.
- 50. The network protocol stack as in claim 49, wherein the key is verified when the key matches the verification key and the key is unverified when the key is different from the verification key.
- 51. The network protocol stack as in claim 46, wherein the network protocol stack is implemented in customer premises equipment in a communications network.
CROSS REFERENCE TO RELATED APPLICATIONS
[0001] Priority is claimed based on U.S. Provisional Application No. 60/315,313 entitled “Key Interface for Secure Object Manipulation” filed Aug. 29, 2001.
Provisional Applications (1)
|
Number |
Date |
Country |
|
60315313 |
Aug 2001 |
US |