Определение алгоритма CRC от данных + CRC - встраиваемое приложение.

Попробуйте это, но он работает только в IE.

function Copy() {
     if(window.clipboardData) {
       window.clipboardData.clearData();
       window.clipboardData.setData("Text", document.getElementById('txtacpy').value);
     } 
    }
    function paste() {
     if(window.clipboardData) {   
       document.getElementById('txtapaste').value = window.clipboardData.getData("Text");
     } 
}
 <a href="javascript:Copy();">Copy</a>
    <br />
    <input type="text" name="txtacpy" id ="txtacpy"/>
    <br />
    <a href="javascript:paste();">Paste</a>
    <br />
    <input type="text" name="txtapaste"  id="txtapaste"/>

5
задан Boann 16 January 2015 в 12:27
поделиться

2 ответа

Код, который Вы отправили от loc_34FA6 вниз, является в основном следующим:

unsigned short
crc16_update(unsigned short crc, unsigned char nextByte)
{
    crc ^= nextByte;

    for (int i = 0; i < 8; ++i) {
        if (crc & 1)
            crc = (crc >> 1) ^ 0xA001;
        else
            crc = (crc >> 1);
    }

    return crc;
}

Это - CRC-16 с 0xA001 многочленом. После того как Вы узнаете диапазон данных, для которых применяется CRC-16, Вы инициализируете CRC к 0xFFFF и вызову эта функция для каждого байта в последовательности. Сохраните возвращаемое значение и пасуйте назад его в следующий раз через. Значением, возвращенным в конце, является Ваш заключительный CRC.

Я не уверен, что делает пролог...

3
ответ дан 15 December 2019 в 01:13
поделиться

В более общем плане часть понятия CRC - то, что, когда Вы вычисляете CRC некоторого файла данных и затем добавляете CRC на конце, Вы получаете файл, кто CRC, некоторое значение, которое зависит от длины файла, но не это - содержание. (Для некоторых алгоритмов CRC это даже не зависит от длины файла.)

Так, если Вы подозреваете приложение, Вы пытаетесь перепроектировать, использует, говорят, что CRC16, и у Вас есть программа, которая вычисляет CRC16, и Вы имеете несколько образцов той же длины, просто вычисляете CRC16 тех файлов данных (которые включают контрольную сумму). Если это возвращается с теми же данными контрольной суммы каждый раз, когда (для файлов той же длины), то они должны содержать контрольную сумму CRC с помощью той же ширины и многочлена.

Например, я когда-то должен был перепроектировать некоторые файлы, где разработчик думал, что был умен путем изменения алгоритма CRC32 путем изменения двух констант. Я не должен был находить объектный код, который проверил контрольную сумму, демонтируйте его и затем изобразите его твердый путь. Этот простой тест закрепил его.

1
ответ дан 15 December 2019 в 01:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: