MCPcopy Create free account
hub / github.com/mscdex/ssh2 / genOpenSSLECDSAPub

Function genOpenSSLECDSAPub

lib/protocol/keyParser.js:280–301  ·  view source on GitHub ↗
(oid, Q)

Source from the content-addressed store, hash-verified

278}
279
280function genOpenSSLECDSAPub(oid, Q) {
281 const asnWriter = new Ber.Writer();
282 asnWriter.startSequence();
283 // algorithm
284 asnWriter.startSequence();
285 asnWriter.writeOID('1.2.840.10045.2.1'); // id-ecPublicKey
286 // algorithm parameters (namedCurve)
287 asnWriter.writeOID(oid);
288 asnWriter.endSequence();
289
290 // subjectPublicKey
291 asnWriter.startSequence(Ber.BitString);
292 asnWriter.writeByte(0x00);
293 // XXX: hack to write a raw buffer without a tag -- yuck
294 asnWriter._ensure(Q.length);
295 asnWriter._buf.set(Q, asnWriter._offset);
296 asnWriter._offset += Q.length;
297 // end hack
298 asnWriter.endSequence();
299 asnWriter.endSequence();
300 return makePEM('PUBLIC', asnWriter.buffer);
301}
302
303function genOpenSSHECDSAPub(oid, Q) {
304 let curveName;

Callers 3

parseOpenSSHPrivKeysFunction · 0.85
keyParser.jsFile · 0.85
parseDERFunction · 0.85

Calls 1

makePEMFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…