Ejemplo n.º 1
0
        /// <summary> 数据第二层分配中心;把数据归类 </summary>
        internal void codeManage(StateBase stateOne, StateCode statecode)
        {
            if (statecode == null || stateOne == null)
            {
                return;
            }
            StateCode stateCode = null;

            switch (statecode.State)
            {
            case PasswordCode._commonCode:    //普通数据信息;抛给普通Code去处理
                stateCode = EncryptionDecrypt.deciphering(statecode.DateByte, stateOne);
                CommonCodeManage(stateOne, stateCode);
                break;

            case PasswordCode._bigDateCode:    //抛给分包Code去处理
                stateCode = EncryptionDecryptSeparateDate.FileDecrypt(statecode.DateByte, stateOne);
                CommonCodeManage(stateOne, stateCode);
                break;

            case PasswordCode._fileCode:    //抛给文件处理器去处理;如果返回null就不用发送了
                byte[] haveDate = FileStart.ReceiveDateTO(statecode.DateByte, stateOne);
                if (haveDate != null)
                {
                    Send(stateOne, haveDate);
                }
                break;
            }
        }
Ejemplo n.º 2
0
 /// <summary>
 /// 一个普通的对数据主体部分进行加密;
 /// </summary>
 /// <param name="date">要加密的数据</param>
 /// <param name="textCode"></param>
 /// <param name="state">StateBase</param>
 /// <returns>加密之后的数据</returns>
 private static byte[] encryptionTemporary(byte[] date, byte textCode, StateBase state)
 {
     if (date.Length > state.BufferSize - 20)
     {
         return(EncryptionDecryptSeparateDate.SendHeadEncryption(date, textCode, state)); //超出通过文件系统发送
     }
     state.SendDateLabel = RandomPublic.RandomNumber(16787);                              //给发送的数据进行编号
     byte[] dateOverall = ByteToDate.OffsetEncryption(date, state.SendDateLabel, 2);
     dateOverall[0] = PasswordCode._commonCode; dateOverall[1] = textCode;
     return(dateOverall);
 }