Patent ID: 9548971
Date: 2017-01-17
CPC Classifications: H04L

Claim:
1. A computer-implemented method for smart cipher selection, at least a portion of the method being performed by a computing device comprising at least one processor, the method comprising: receiving, at a server and from a client, a request to communicate according to a cipher for encryption, the request containing a client list of ciphers available at the client; identifying a server list of ciphers available at the server; measuring, in response to receiving the request, a risk factor indicating a degree of risk posed by the client, wherein: measuring, in response to receiving the request, a resource load at the server that comprises a measurement of computational processing power at the server; determining whether the resource-load measurement exceeds a predetermined resource-load threshold; in response to determining that the resource-load measurement exceeds the predetermined resource-load threshold, selecting from both the client list and the server list a common cipher that has a lower level of complexity than at least one other common cipher for encrypted communication based on both the resource-load measurement exceeding the predetermined resource-load threshold and the risk factor not exceeding the predetermined risk threshold; in response to determining that the resource-load measurement does not exceed the predetermined resource-load threshold, selecting from both the client list and the server list, based on both the resource-load measurement not exceeding the predetermined resource-load threshold and the risk factor not exceeding the predetermined risk threshold, a common cipher that has a higher level of complexity than the common cipher that would have been selected had the resource-load measurement exceeded the predetermined resource-load threshold; encrypting communication between the server and the client using the selected common cipher; transmitting the communication between the server and the client that was encrypted using the selected common cipher.