A small library to verify the identity of apple-gamecenter's local player for consuming it in node.js backend server.
npm install apple-gamecenter-identity-verifierThis is library to validate a apple's gamecenter identity of localplayer for consuming it in [node.js][node] backend server.
``bash`
npm install apple-gamecenter-identity-verifier --save
`js
var verifier = require('apple-gamecenter-identity-verifier');
// identity from client.
// Reference: https://developer.apple.com/library/ios/documentation/GameKit/Reference/GKLocalPlayer_Ref/index.html#//apple_ref/occ/instm/GKLocalPlayer/generateIdentityVerificationSignatureWithCompletionHandler
var identity = {
publicKeyUrl: 'https://valid.apple.com/public/timeout.cer',
timestamp: 1460981421303,
signature: 'PoDwf39DCN464B49jJCU0d9Y0J',
salt: 'saltST==',
playerId: 'G:1111111',
bundleId: 'com.valid.app'
};
verifier.verify(identity, function (err, token) {
if (!err) {
// use token in here.
console.log(token);
}
});
`
`ts
import { verify } from 'apple-gamecenter-identity-verifier';
// identity from client.
// Reference: https://developer.apple.com/library/ios/documentation/GameKit/Reference/GKLocalPlayer_Ref/index.html#//apple_ref/occ/instm/GKLocalPlayer/generateIdentityVerificationSignatureWithCompletionHandler
var identity = {
publicKeyUrl: 'https://valid.apple.com/public/timeout.cer',
timestamp: 1460981421303,
signature: 'PoDwf39DCN464B49jJCU0d9Y0J',
salt: 'saltST==',
playerId: 'G:1111111',
bundleId: 'com.valid.app'
};
verify(identity, function (err, token) {
if (!err) {
// use token in here.
console.log(token);
}
});
`
`bash``
npm test
Take care to maintain the existing coding style.
Add unit tests for any new or changed functionality. Lint and test your code.
* apple's api document - https://developer.apple.com/library/ios/documentation/GameKit/Reference/GKLocalPlayer_Ref/index.html#//apple_ref/occ/instm/GKLocalPlayer/generateIdentityVerificationSignatureWithCompletionHandler
* stackoverflow - http://stackoverflow.com/questions/17408729/how-to-authenticate-the-gklocalplayer-on-my-third-party-server
* 1.0.0 Initial release
[node]: http://nodejs.org/