当前位置: 首页>>代码示例>>Java>>正文


Java PreKeyUtil类代码示例

本文整理汇总了Java中org.thoughtcrime.securesms.crypto.PreKeyUtil的典型用法代码示例。如果您正苦于以下问题:Java PreKeyUtil类的具体用法?Java PreKeyUtil怎么用?Java PreKeyUtil使用的例子?那么, 这里精选的类代码示例或许可以为您提供帮助。


PreKeyUtil类属于org.thoughtcrime.securesms.crypto包,在下文中一共展示了PreKeyUtil类的10个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。

示例1: onRun

import org.thoughtcrime.securesms.crypto.PreKeyUtil; //导入依赖的package包/类
@Override
public void onRun(MasterSecret masterSecret) throws IOException {
  if (TextSecurePreferences.isSignedPreKeyRegistered(context)) {
    Log.w(TAG, "Signed prekey already registered...");
    return;
  }

  if (!TextSecurePreferences.isPushRegistered(context)) {
    Log.w(TAG, "Not yet registered...");
    return;
  }

  IdentityKeyPair    identityKeyPair    = IdentityKeyUtil.getIdentityKeyPair(context);
  SignedPreKeyRecord signedPreKeyRecord = PreKeyUtil.generateSignedPreKey(context, identityKeyPair, true);

  accountManager.setSignedPreKey(signedPreKeyRecord);
  TextSecurePreferences.setSignedPreKeyRegistered(context, true);
}
 
开发者ID:XecureIT,项目名称:PeSanKita-android,代码行数:19,代码来源:CreateSignedPreKeyJob.java

示例2: onRun

import org.thoughtcrime.securesms.crypto.PreKeyUtil; //导入依赖的package包/类
@Override
public void onRun(MasterSecret masterSecret) throws Exception {
  Log.w(TAG, "Rotating signed prekey...");

  IdentityKeyPair    identityKey        = IdentityKeyUtil.getIdentityKeyPair(context);
  SignedPreKeyRecord signedPreKeyRecord = PreKeyUtil.generateSignedPreKey(context, identityKey, false);

  accountManager.setSignedPreKey(signedPreKeyRecord);

  PreKeyUtil.setActiveSignedPreKeyId(context, signedPreKeyRecord.getId());
  TextSecurePreferences.setSignedPreKeyRegistered(context, true);
  TextSecurePreferences.setSignedPreKeyFailureCount(context, 0);

  ApplicationContext.getInstance(context)
                    .getJobManager()
                    .add(new CleanPreKeysJob(context));
}
 
开发者ID:XecureIT,项目名称:PeSanKita-android,代码行数:18,代码来源:RotateSignedPreKeyJob.java

示例3: handleCommonRegistration

import org.thoughtcrime.securesms.crypto.PreKeyUtil; //导入依赖的package包/类
private void handleCommonRegistration(SignalServiceAccountManager accountManager, String number, String password, String signalingKey, boolean supportsGcm)
    throws IOException
{
  setState(new RegistrationState(RegistrationState.STATE_GENERATING_KEYS, number));
  Recipient          self         = RecipientFactory.getRecipientsFromString(this, number, false).getPrimaryRecipient();
  IdentityKeyPair    identityKey  = IdentityKeyUtil.getIdentityKeyPair(this);
  List<PreKeyRecord> records      = PreKeyUtil.generatePreKeys(this);
  SignedPreKeyRecord signedPreKey = PreKeyUtil.generateSignedPreKey(this, identityKey, true);
  accountManager.setPreKeys(identityKey.getPublicKey(), signedPreKey, records);

  setState(new RegistrationState(RegistrationState.STATE_GCM_REGISTERING, number));

  TextSecurePreferences.setWebsocketRegistered(this, true);

  DatabaseFactory.getIdentityDatabase(this).saveIdentity(self.getRecipientId(), identityKey.getPublicKey(), IdentityDatabase.VerifiedStatus.VERIFIED, true, System.currentTimeMillis(), true);
  DirectoryHelper.refreshDirectory(this, accountManager, number);

  DirectoryRefreshListener.schedule(this);
  RotateSignedPreKeyListener.schedule(this);
}
 
开发者ID:CableIM,项目名称:Cable-Android,代码行数:21,代码来源:RegistrationService.java

示例4: onRun

import org.thoughtcrime.securesms.crypto.PreKeyUtil; //导入依赖的package包/类
@Override
public void onRun(MasterSecret masterSecret) throws IOException {
  if (!TextSecurePreferences.isPushRegistered(context)) return;

  int availableKeys = accountManager.getPreKeysCount();

  if (availableKeys >= PREKEY_MINIMUM && TextSecurePreferences.isSignedPreKeyRegistered(context)) {
    Log.w(TAG, "Available keys sufficient: " + availableKeys);
    return;
  }

  List<PreKeyRecord> preKeyRecords       = PreKeyUtil.generatePreKeys(context);
  IdentityKeyPair    identityKey         = IdentityKeyUtil.getIdentityKeyPair(context);
  SignedPreKeyRecord signedPreKeyRecord  = PreKeyUtil.generateSignedPreKey(context, identityKey, false);

  Log.w(TAG, "Registering new prekeys...");

  accountManager.setPreKeys(identityKey.getPublicKey(), signedPreKeyRecord, preKeyRecords);

  PreKeyUtil.setActiveSignedPreKeyId(context, signedPreKeyRecord.getId());
  TextSecurePreferences.setSignedPreKeyRegistered(context, true);

  ApplicationContext.getInstance(context)
                    .getJobManager()
                    .add(new CleanPreKeysJob(context));
}
 
开发者ID:CableIM,项目名称:Cable-Android,代码行数:27,代码来源:RefreshPreKeysJob.java

示例5: handleCommonRegistration

import org.thoughtcrime.securesms.crypto.PreKeyUtil; //导入依赖的package包/类
private void handleCommonRegistration(MasterSecret masterSecret, TextSecureAccountManager accountManager, String number)
    throws IOException
{
  setState(new RegistrationState(RegistrationState.STATE_GENERATING_KEYS, number));
  IdentityKeyPair    identityKey  = IdentityKeyUtil.getIdentityKeyPair(this, masterSecret);
  List<PreKeyRecord> records      = PreKeyUtil.generatePreKeys(this, masterSecret);
  PreKeyRecord       lastResort   = PreKeyUtil.generateLastResortKey(this, masterSecret);
  SignedPreKeyRecord signedPreKey = PreKeyUtil.generateSignedPreKey(this, masterSecret, identityKey);
  accountManager.setPreKeys(identityKey.getPublicKey(),lastResort, signedPreKey, records);

  setState(new RegistrationState(RegistrationState.STATE_GCM_REGISTERING, number));

  String gcmRegistrationId = GoogleCloudMessaging.getInstance(this).register(GcmRefreshJob.REGISTRATION_ID);
  TextSecurePreferences.setGcmRegistrationId(this, gcmRegistrationId);
  accountManager.setGcmId(Optional.of(gcmRegistrationId));

  DirectoryHelper.refreshDirectory(this, accountManager, number);

  DirectoryRefreshListener.schedule(this);
}
 
开发者ID:redcracker,项目名称:TextSecure,代码行数:21,代码来源:RegistrationService.java

示例6: onRun

import org.thoughtcrime.securesms.crypto.PreKeyUtil; //导入依赖的package包/类
@Override
public void onRun(MasterSecret masterSecret) throws IOException {
  if (!TextSecurePreferences.isPushRegistered(context)) return;

  int availableKeys = accountManager.getPreKeysCount();

  if (availableKeys >= PREKEY_MINIMUM && TextSecurePreferences.isSignedPreKeyRegistered(context)) {
    Log.w(TAG, "Available keys sufficient: " + availableKeys);
    return;
  }

  List<PreKeyRecord> preKeyRecords       = PreKeyUtil.generatePreKeys(context, masterSecret);
  PreKeyRecord       lastResortKeyRecord = PreKeyUtil.generateLastResortKey(context, masterSecret);
  IdentityKeyPair    identityKey         = IdentityKeyUtil.getIdentityKeyPair(context, masterSecret);
  SignedPreKeyRecord signedPreKeyRecord  = PreKeyUtil.generateSignedPreKey(context, masterSecret, identityKey);

  Log.w(TAG, "Registering new prekeys...");

  accountManager.setPreKeys(identityKey.getPublicKey(), lastResortKeyRecord, signedPreKeyRecord, preKeyRecords);

  TextSecurePreferences.setSignedPreKeyRegistered(context, true);

  ApplicationContext.getInstance(context)
                    .getJobManager()
                    .add(new CleanPreKeysJob(context));
}
 
开发者ID:redcracker,项目名称:TextSecure,代码行数:27,代码来源:RefreshPreKeysJob.java

示例7: handleCommonRegistration

import org.thoughtcrime.securesms.crypto.PreKeyUtil; //导入依赖的package包/类
private void handleCommonRegistration(SignalServiceAccountManager accountManager, String number, String password, String signalingKey, boolean supportsGcm)
    throws IOException
{
  setState(new RegistrationState(RegistrationState.STATE_GENERATING_KEYS, number));
  Recipient          self         = RecipientFactory.getRecipientsFromString(this, number, false).getPrimaryRecipient();
  IdentityKeyPair    identityKey  = IdentityKeyUtil.getIdentityKeyPair(this);
  List<PreKeyRecord> records      = PreKeyUtil.generatePreKeys(this);
  PreKeyRecord       lastResort   = PreKeyUtil.generateLastResortKey(this);
  SignedPreKeyRecord signedPreKey = PreKeyUtil.generateSignedPreKey(this, identityKey, true);
  accountManager.setPreKeys(identityKey.getPublicKey(),lastResort, signedPreKey, records);

  setState(new RegistrationState(RegistrationState.STATE_GCM_REGISTERING, number));

  if (supportsGcm) {
    String gcmRegistrationId = GoogleCloudMessaging.getInstance(this).register(GcmRefreshJob.REGISTRATION_ID);
    accountManager.setGcmId(Optional.of(gcmRegistrationId));

    TextSecurePreferences.setGcmRegistrationId(this, gcmRegistrationId);
    TextSecurePreferences.setGcmDisabled(this, false);
  } else {
    TextSecurePreferences.setGcmDisabled(this, true);
  }

  TextSecurePreferences.setWebsocketRegistered(this, true);

  DatabaseFactory.getIdentityDatabase(this).saveIdentity(self.getRecipientId(), identityKey.getPublicKey());
  DirectoryHelper.refreshDirectory(this, accountManager, number);

  DirectoryRefreshListener.schedule(this);
  RotateSignedPreKeyListener.schedule(this);
}
 
开发者ID:XecureIT,项目名称:PeSanKita-android,代码行数:32,代码来源:RegistrationService.java

示例8: onRun

import org.thoughtcrime.securesms.crypto.PreKeyUtil; //导入依赖的package包/类
@Override
public void onRun(MasterSecret masterSecret) throws IOException {
  if (!TextSecurePreferences.isPushRegistered(context)) return;

  int availableKeys = accountManager.getPreKeysCount();

  if (availableKeys >= PREKEY_MINIMUM && TextSecurePreferences.isSignedPreKeyRegistered(context)) {
    Log.w(TAG, "Available keys sufficient: " + availableKeys);
    return;
  }

  List<PreKeyRecord> preKeyRecords       = PreKeyUtil.generatePreKeys(context);
  PreKeyRecord       lastResortKeyRecord = PreKeyUtil.generateLastResortKey(context);
  IdentityKeyPair    identityKey         = IdentityKeyUtil.getIdentityKeyPair(context);
  SignedPreKeyRecord signedPreKeyRecord  = PreKeyUtil.generateSignedPreKey(context, identityKey, false);

  Log.w(TAG, "Registering new prekeys...");

  accountManager.setPreKeys(identityKey.getPublicKey(), lastResortKeyRecord, signedPreKeyRecord, preKeyRecords);

  PreKeyUtil.setActiveSignedPreKeyId(context, signedPreKeyRecord.getId());
  TextSecurePreferences.setSignedPreKeyRegistered(context, true);

  ApplicationContext.getInstance(context)
                    .getJobManager()
                    .add(new CleanPreKeysJob(context));
}
 
开发者ID:XecureIT,项目名称:PeSanKita-android,代码行数:28,代码来源:RefreshPreKeysJob.java

示例9: onRun

import org.thoughtcrime.securesms.crypto.PreKeyUtil; //导入依赖的package包/类
@Override
public void onRun(MasterSecret masterSecret) throws IOException {
  try {
    Log.w(TAG, "Cleaning prekeys...");

    int                activeSignedPreKeyId = PreKeyUtil.getActiveSignedPreKeyId(context);
    SignedPreKeyStore  signedPreKeyStore    = signedPreKeyStoreFactory.create();

    if (activeSignedPreKeyId < 0) return;

    SignedPreKeyRecord             currentRecord = signedPreKeyStore.loadSignedPreKey(activeSignedPreKeyId);
    List<SignedPreKeyRecord>       allRecords    = signedPreKeyStore.loadSignedPreKeys();
    LinkedList<SignedPreKeyRecord> oldRecords    = removeRecordFrom(currentRecord, allRecords);

    Collections.sort(oldRecords, new SignedPreKeySorter());

    Log.w(TAG, "Active signed prekey: " + activeSignedPreKeyId);
    Log.w(TAG, "Old signed prekey record count: " + oldRecords.size());

    boolean foundAgedRecord = false;

    for (SignedPreKeyRecord oldRecord : oldRecords) {
      long archiveDuration = System.currentTimeMillis() - oldRecord.getTimestamp();

      if (archiveDuration >= ARCHIVE_AGE) {
        if (!foundAgedRecord) {
          foundAgedRecord = true;
        } else {
          Log.w(TAG, "Removing signed prekey record: " + oldRecord.getId() + " with timestamp: " + oldRecord.getTimestamp());
          signedPreKeyStore.removeSignedPreKey(oldRecord.getId());
        }
      }
    }
  } catch (InvalidKeyIdException e) {
    Log.w(TAG, e);
  }
}
 
开发者ID:XecureIT,项目名称:PeSanKita-android,代码行数:38,代码来源:CleanPreKeysJob.java

示例10: onRun

import org.thoughtcrime.securesms.crypto.PreKeyUtil; //导入依赖的package包/类
@Override
public void onRun() throws IOException {
  MasterSecret masterSecret = ParcelUtil.deserialize(getEncryptionKeys().getEncoded(), MasterSecret.CREATOR);

  if (TextSecurePreferences.isSignedPreKeyRegistered(context)) {
    Log.w(TAG, "Signed prekey already registered...");
    return;
  }

  IdentityKeyPair    identityKeyPair    = IdentityKeyUtil.getIdentityKeyPair(context, masterSecret);
  SignedPreKeyRecord signedPreKeyRecord = PreKeyUtil.generateSignedPreKey(context, masterSecret, identityKeyPair);

  accountManager.setSignedPreKey(signedPreKeyRecord);
  TextSecurePreferences.setSignedPreKeyRegistered(context, true);
}
 
开发者ID:redcracker,项目名称:TextSecure,代码行数:16,代码来源:CreateSignedPreKeyJob.java


注:本文中的org.thoughtcrime.securesms.crypto.PreKeyUtil类示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。