IP Library › Granted Patent US 7,194,619
Granted Patent B2
US 7,194,619 · App. 10/109,230 · Granted Mar 20, 2007

Remotely booting devices in a dense server environment without manually installing authentication parameters on the devices to be booted

Assignee: International Business Machines Corporation
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,194,619
App. No.
10/109,230
Granted
Mar 20, 2007
Kind
B2
Abstract

A method, system and computer program product for remotely booting devices. A deployment server may remotely transmit authentication parameter(s), e.g., public key, secret key, to a service unit configured to establish a private connection between server blades and the deployment server. The service unit may remotely install the authentication parameter(s) onto the server blade(s) to be booted by either the deployment server or another boot server. By the service unit remotely installing the authentication parameter(s) onto the server blade(s), the need to manually install them during each network boot operation may be alleviated. By remotely transmitting authentication parameter(s) instead of manually installing them on the devices to be booted during each network boot operation, the deployment server may be able to generate unique authentication parameter(s), e.g., public/private key pair, secret key, for each network boot operation thereby substantially reducing the exposure to replay attacks.

Claims (179)

1. A method for remotely booting devices comprising the steps of:

generating a unique public/private key pair associated with a network boot operation;

encrypting a boot code image with said private key;

transmitting said public key to a service unit configured to establish a connection between a target device and a boot device, wherein said target device is a device booted by said boot device;

writing said public key to said target device;

booting to said boot device by said target device; and

transmitting said encrypted boot code image by said boot device to said target device.

2. The method as recited in claim 1 further comprising the step of:

booting said boot code image by said target device.

3. The method as recited in claim 2 , wherein said boot code image is booted by said target device if said boot code image is authenticated.

4. The method as recited in claim 1 further comprising the step of:

discarding said boot code image by said target device.

5. The method as recited in claim 4 , wherein said boot code image is discarded by said target device if said boot code image is not authenticated.

6. The method as recited in claim 1 further comprising the steps of:

determining a network topology by identifying said target device and said service unit coupled to said target device; and

transmitting an identification of said target device to said service unit.

7. A system, comprising:

a boot device;

a target device configured to be booted by said boot device; and

a service unit coupling said boot device to said target device, wherein said service unit is configured to establish a connection between said target device and said boot device;

wherein said boot device comprises:

a memory unit operable for storing a program operable for remotely booting devices; and

a processor coupled to said memory, wherein said processor, responsive to said program, comprises:

circuitry operable for generating a unique public/private key pair associated with a network boot operation;

circuitry operable for encrypting a boot code image with said private key;

circuitry operable for transmitting said public key to said service unit, wherein said service unit is configured to write said public key to said target device; and

circuitry operable for transmitting said encrypted boot code image to said target device.

8. The system as recited in claim 7 , wherein said target device is configured to boot said boot code image if said boot code image is authenticated.

9. The system as recited in claim 7 , wherein said target device is configured to discard said boot code image if said boot code image is not authenticated.

10. The system as recited in claim 7 , wherein said boot device further comprises:

circuitry operable for determining a network topology by identifying said target device and said service unit coupled to said target device; and

circuitry operable for transmitting an identification of said target device to said service unit.

11. A system, comprising:

means for generating a unique public/private key pair associated with a network boot operation;

means for encrypting a boot code image with said private key;

means for transmitting said public key to a service unit configured to establish a connection between a target device and a boot device, wherein said target device is a device booted by said boot device;

means for writing said public key to said target device;

means for booting to said boot device by said target device; and

means for transmitting said encrypted boot code image by said boot device to said target device.

12. The system as recited in claim 11 further comprises:

means for booting said boot code image by said target device.

13. The system as recited in claim 12 , wherein said boot code image is booted by said target device if said boot code image is authenticated.

14. The system as recited in claim 11 further comprises:

means for discarding said boot code image by said target device.

15. The system as recited in claim 14 , wherein said boot code image is discarded by said target device if said boot code image is not authenticated.

16. The system as recited in claim 11 further comprises:

means for determining a network topology by identifying said target device and said service unit coupled to said target device; and

means for transmitting an identification of said target device to said service unit.

17. A system, comprising:

a target device;

a boot device configured to coordinate booting of said target device;

a service unit coupling said boot device to said target device, wherein said service unit is configured to establish a connection between said target device and said boot device; and

a server coupled to said boot device and to said target device, wherein said server is configured to remotely boot said target device;

wherein said boot device comprises:

a memory unit operable for storing a program operable for coordinating the remote booting of devices; and

a processor coupled to said memory, wherein said processor, responsive to said program, comprises:

circuitry operable for generating a unique public/private key pair associated with a network boot operation;

circuitry operable for encrypting a boot code image with said private key; and

circuitry operable for transmitting said public key to said service unit, wherein said service unit is configured to write said public key to said target device;

wherein said server comprises:

a memory unit operable for storing a program operable for remotely booting devices; and

a processor coupled to said memory, wherein said processor, responsive to said program, comprises:

circuitry operable for transmitting said encrypted boot code image to said target device.

18. The system as recited in claim 17 , wherein said target device is configured to boot said boot code image if said boot code image is authenticated.

19. The system as recited in claim 17 , wherein said target device is configured to discard said boot code image if said boot code image is not authenticated.

20. The system as recited in claim 17 , wherein said boot device further comprises:

circuitry operable for determining a network topology by identifying said target device and said service unit coupled to said target device;

circuitry operable for transmitting an identification of said target device to said service unit; and

circuitry operable for transmitting an identification of said server to boot said target device to said service unit.

21. The system as recited in claim 20 , wherein said service unit is configured to update a configuration of said target device indicating to boot from said server.

22. The system as recited in claim 21 , wherein said service unit is configured to write said public key to said target device.

23. A computer program product embodied in a machine readable medium for remotely booting devices comprising the programming steps of:

generating a unique public/private key pair associated with a network boot operation;

encrypting a boot code image with said private key;

transmitting said public key to a service unit configured to establish a connection between a target device and a boot device, wherein said target device is a device booted by said boot device;

writing said public key to said target device;

booting to said boot device by said target device; and

transmitting said encrypted boot code image by said boot device to said target device.

24. The computer program product as recited in claim 23 further comprising the programming step of:

booting said boot code image by said target device.

25. The computer program product as recited in claim 24 , wherein said boot code image is booted by said target device if said boot code image is authenticated.

26. The computer program product as recited in claim 23 further comprising the programming step of:

discarding said boot code image by said target device.

27. The computer program product as recited in claim 26 , wherein said boot code image is discarded by said target device if said boot code image is not authenticated.

28. The computer program product as recited in claim 23 further comprising the programming steps of:

determining a network topology by identifying said target device and said service unit coupled to said target device; and

transmitting an identification of said target device to said service unit.

29. A method for remotely booting devices comprising the steps of:

generating a unique secret key associated with a network boot operation;

generating a message digest of a boot code image;

generating a digital signature by encrypting said message digest and said boot code image using said secret key;

transmitting said secret key to a service unit configured to establish a connection between a target device and a boot device, wherein said target device is a device booted by said boot device;

writing said secret key to said target device;

booting to said boot device by said target device; and

transmitting said digital signature and said boot code image by said boot device to said target device.

30. The method as recited in claim 29 further comprising the step of:

booting said boot code image by said target device.

31. The method as recited in claim 30 , wherein said boot code image is booted by said target device if said target device authenticated said digital signature.

32. The method as recited in claim 29 further comprising the step of:

discarding said boot code image by said target device.

33. The method as recited in claim 32 , wherein said boot code image is discarded by said target device if said target device did not authenticate said digital signature.

34. The method as recited in claim 29 further comprising the steps of:

determining a network topology by identifying said target device and said service unit coupled to said target device; and

transmitting an identification of said target device to said service unit.

35. A system, comprising:

a boot device;

a target device configured to be booted by said boot device; and

a service unit coupling said boot device to said target device, wherein said service unit is configured to establish a connection between said target device and said boot device;

wherein said boot device comprises:

a memory unit operable for storing a program operable for remotely booting devices; and

a processor coupled to said memory, wherein said processor, responsive to said program, comprises:

circuitry operable for generating a unique secret key associated with a network boot operation;

circuitry operable for generating a message digest of a boot code image;

circuitry operable for generating a digital signature by encrypting said message digest and said boot code image using said secret key;

circuitry operable for transmitting said secret key to said service unit, wherein said service unit is configured to write said secret key to said target device; and

circuitry operable for transmitting said digital signature and said boot code image to said target device.

36. The system as recited in claim 35 , wherein said target device is configured to boot said boot code image if said target device authenticated said digital signature.

37. The system as recited in claim 35 , wherein said target device is configured to discard said boot code image if said target device did not authenticate said encrypted boot code image.

38. The system as recited in claim 35 , wherein said boot device further comprises:

circuitry operable for determining a network topology by identifying said target device and said service unit coupled to said target device; and

circuitry operable for transmitting an identification of said target device to said service unit.

39. A system, comprising:

means for generating a unique secret key associated with a network boot operation;

means for generating a message digest of a boot code image;

means for generating a digital signature by encrypting said message digest and said boot code image using said secret key;

means for transmitting said secret key to a service unit configured to establish a connection between a target device and a boot device, wherein said target device is a device booted by said boot device;

means for writing said secret key to said target device;

means for booting to said boot device by said target device; and

means for transmitting said digital signature and said boot code image by said boot device to said target device.

40. The system as recited in claim 39 further comprises:

means for booting said boot code image by said target device.

41. The system as recited in claim 40 , wherein said boot code image is booted by said target device if said target device authenticated said digital signature.

42. The system as recited in claim 36 further comprises:

means for discarding said boot code image by said target device.

43. The system as recited in claim 42 , wherein said boot code image is discarded by said target device if said target device did not authenticate said digital signature.

44. The system as recited in claim 39 further comprises:

means for determining a network topology by identifying said target device and said service unit coupled to said target device; and

means for transmitting an identification of said target device to said service unit.

45. A system, comprising:

a target device;

a boot device configured to coordinate booting of said target device;

a service unit coupling said boot device to said target device, wherein said service unit is configured to establish a connection between said target device and said boot device; and

a server coupled to said boot device and to said target device, wherein said server is configured to remotely boot said target device;

wherein said boot device comprises:

a memory unit operable for storing a program operable for coordinating the remote booting of devices; and

a processor coupled to said memory, wherein said processor, responsive to said program, comprises:

circuitry operable for generating a unique secret key associated with a network boot operation;

circuitry operable for generating a message digest of a boot code image;

circuitry operable for generating a digital signature by encrypting said message digest and said boot code image using said secret key;

circuitry operable for transmitting said secret key to said service unit, wherein said service unit is configured to write said public key to said target device;

wherein said server comprises:

a memory unit operable for storing a program operable for remotely booting devices; and

a processor coupled to said memory, wherein said processor, responsive to said program, comprises:

circuitry operable for transmitting said digital signature and said boot code image to said target device.

46. The system as recited in claim 45 , wherein said target device is configured to boot said boot code image if said target device authenticated said digital signature.

47. The system as recited in claim 45 , wherein said target device is configured to discard said boot code image if said target device did not authenticate said digital signature.

48. The system as recited in claim 45 , wherein said boot device further comprises:

circuitry operable for determining a network topology by identifying said target device and said service unit coupled to said target device;

circuitry operable for transmitting an identification of said target device to said service unit; and

circuitry operable for transmitting an identification of said server to boot said target device to said service unit.

49. The system as recited in claim 48 , wherein said service unit is configured to update a configuration of said target device indicating to boot from said server.

50. The system as recited in claim 49 , wherein said service unit is configured to write said secret key to said target device.

51. A computer program product embodied in a machine readable medium for remotely booting devices comprising the programming steps of:

generating a unique secret key associated with a network boot operation;

generating a message digest of a boot code image;

generating a digital signature by encrypting said message digest and said boot code image using said secret key;

transmitting said secret key to a service unit configured to establish a connection between a target device and a boot device, wherein said target device is a device booted by said boot device;

writing said secret key to said target device;

booting to said boot device by said target device; and

transmitting said digital signature and said boot code image by said boot device to said target device.

52. The computer program product as recited in claim 51 further comprising the programming step of:

booting said boot code image by said target device.

53. The computer program product as recited in claim 52 , wherein said boot code image is booted by said target device if said target device authenticated said digital signature.

54. The computer program product as recited in claim 51 further comprising the programming step of:

discarding said boot code image by said target device.

55. The computer program product as recited in claim 54 , wherein said boot code image is discarded by said target device if said target device did not authenticate said digital signature.

56. The computer program product as recited in claim 51 further comprising the programming steps of:

determining a network topology by identifying said target device and said service unit coupled to said target device; and

transmitting an identification of said target device to said service unit.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 26, 2002
From: ABBONDANZIO, ANTONIO; CHU, SIMON C.; DAKE, GREGORY W.; DAY, MICHAEL DAVID II; PIAZZA, WILLIAM J.; PRUETT, GREGORY B.; RHOADES, DAVID B.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 012767/0024 →
Continuity (1)
Related Publication 20030188176A1 · Oct 2, 2003