Skip to content

security manager doc #418

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 8 commits into from
Closed

Conversation

paul-szczepanek-arm
Copy link
Member

same problem as the GAP pull request - the example pages don't exist

Copy edit for active voice, consistent spelling across documents and consistent tense.
Copy link
Contributor

@AnotherButler AnotherButler left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Nice work on this. I've left some comments and queries for you to address.

@@ -0,0 +1,21 @@
## SecurityManager

SecurityManager deals with authentication and encryption for the link. The process of pairing and optionally bonding provides this. Bonding is achieved by saving the pairing information to be reused on subsequent reconnections.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Query: What link? Could you please provide more context here?
Query: Who or what achieves bonding by saving the pairing information to be reused? Reused by whom or by what?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thanks, information added


SecurityManager deals with authentication and encryption for the link. The process of pairing and optionally bonding provides this. Bonding is achieved by saving the pairing information to be reused on subsequent reconnections.

The process of pairing may produce a set of keys to be used during current or later connections. These are handled by the Security Manager and include the Long Term Encryption Key (LTK), the Identity Resolving Key (IRK) and the Connection Signature Resolving Key (CSRK). The LTK is used to encrypt subsequent connections. IRK is used to identify peers who use random resolvable addresses. CSRK is used to sign and authenticate signed data.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Query: Who or what uses the LTK to encrypt subsequent connections?
Query: Who or what uses IRK to identify peers?
Query: Who or what uses CSRK to sign and authenticate signed data?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thanks, information added


The process of pairing may produce a set of keys to be used during current or later connections. These are handled by the Security Manager and include the Long Term Encryption Key (LTK), the Identity Resolving Key (IRK) and the Connection Signature Resolving Key (CSRK). The LTK is used to encrypt subsequent connections. IRK is used to identify peers who use random resolvable addresses. CSRK is used to sign and authenticate signed data.

The pairing process may provide man-in-the-middle protection (MITM). This is achieved through various means, including out of band communication, depending on the capabilities of the local and peer device.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Query: Could we replace the second sentence with "You can achieve MITM protection through band communication, depending on the capabilities of the local and peer device." for active voice?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

changed into active voice, thanks


The Security Manager will store the keys, if possible permanently, to speed up security requests on subsequent connections.
The SecurityManager stores the keys, permanently if possible, to speed security requests on subsequent connections.
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

what's wrong with "speed up"?

@paul-szczepanek-arm
Copy link
Member Author

ignore the reverts - I got seriously confused, erm, I mean I seriously confused myself ;)

Copy edit for active voice.

The SecurityManager example demonstrates both a central and a peripheral connecting and performing basic pairing and setting up link security.

[![View code](https://www.mbed.com/embed/?url=https://os.mbed.com/teams/mbed-os-examples/code/mbed-os-example-ble-SM/)](https://os.mbed.com/teams/mbed-os-examples/code/mbed-os-example-ble-SM)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We've added you to Teams. Please create your example there, and let me know if you have any permissions issues.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

added page

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@AnotherButler good to merge?

@AnotherButler AnotherButler changed the base branch from 5.7 to new_engine March 10, 2018 00:26
@AnotherButler AnotherButler changed the base branch from new_engine to 5.7 March 10, 2018 00:27
@AnotherButler
Copy link
Contributor

With 5.8 coming up, I'm re-creating this against the test site instead of the 5.7 live site. Because of this, I'm closing this PR in favor of PR #450

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants