##### SUMMARY
The `get_certificate` module should support a cryptography backend, so PyOpenSSL can be deprecated / removed eventually.

##### ISSUE TYPE
- Feature Idea

##### COMPONENT NAME
get_certificate

'2.23.43.1.4.4': ('wap-wsg-idm-ecid-wtls4', ),
    '2.23.43.1.4.5': ('wap-wsg-idm-ecid-wtls5', ),
    '2.23.43.1.4.6': ('wap-wsg-idm-ecid-wtls6', ),
    '2.23.43.1.4.7': ('wap-wsg-idm-ecid-wtls7', ),
    '2.23.43.1.4.8': ('wap-wsg-idm-ecid-wtls8', ),
    '2.23.43.1.4.9': ('wap-wsg-idm-ecid-wtls9', ),
    '2.23.43.1.4.10': ('wap-wsg-idm-ecid-wtls10', ),
    '2.23.43.1.4.11': ('wap-wsg-idm-ecid-wtls11', ),
    '2.23.43.1.4.12': ('wap-wsg-idm-ecid-wtls12', ),
}
_OID_LOOKUP = dict()
_NORMALIZE_NAMES = dict()
for dotted, names in _OID_MAP.items():
    for name in names:
        if name in _NORMALIZE_NAMES and _OID_LOOKUP[name] != dotted:
            raise AssertionError(
                'Name collision during setup: "{0}" for OIDs {1} and {2}'
                .format(name, dotted, _OID_LOOKUP[name])
            )
        _NORMALIZE_NAMES[name] = names[0]
        _OID_LOOKUP[name] = dotted
for alias, original in [('userID', 'userId')]:
    if alias in _NORMALIZE_NAMES:
        raise AssertionError(
            'Name collision during adding aliases: "{0}" (alias for "{1}") is already mapped to OID {2}'
            .format(alias, original, _OID_LOOKUP[alias])
        )
    _NORMALIZE_NAMES[alias] = original
    _OID_LOOKUP[alias] = _OID_LOOKUP[original]
def pyopenssl_normalize_name(name):