Тест 2 (ERC-1155)
Предлагаю к вниманию второй тест для самостоятельной проверки. На этот раз для разбора стандарта ERC-1155.
Вообще, сегодня я выложу 3 поста для проверки своих знаний: текущий тест, пример экзамена для аудитора и контракты из реального собеседования, где нужно будет найти все возможные ошибки.
На выходных вы сможете в спокойной обстановке проверить свои знания.
Итак, вопросы для второго теста. Сам контракт можно скачать выше.
1. В данном контракте функция balanceOf():
а) Может быть оптимизирована кэшированием переменной состояния в локальную переменную;
б) Может быть оптимизирована изменением с view на pure;
в) Может быть оптимизирована изменением на external;
г) Ничего из перечисленного;
2. В данном контракте проверка array lengths mismatch отсутствует в функциях:
а) balanceOfBatch();
б) _safeBatchTransferFrom();
в) _mintBatch();
г) _burnBatch();
3. Проблемы в безопасности функции _safeTransferFrom():
а) Не правильная область видимости;
б) Возможность integer underflow;
в) Отсутствие проверки на нулевой адрес;
г) Ничего из перечисленного;
4. Проблемы в безопасности функции _safeBatchTransferFrom():
а) Отсутствие проверки array lengths mismatch;
б) Возможность integer underflow;
в) Не правильное обновление баланса;
г) Ничего из перечисленного;
5. Проблемы в безопасности функции _mintBatch():
а) Отсутствие проверки array lengths mismatch;
б) Не правильное порождение события;
в) Возможность сжигания токенов;
г) Ничего из перечисленного;
6. Проблемы в безопасности функции _burn():
а) Отсутствие проверки на нулевой адрес;
б) Возможность integer underflow;
в) Не правильное обновление баланса;
г) Ничего из перечисленного;
7. Проблемы в безопасности функции _doSafeTransferAcceptanceCheck():
а) Не правильная проверка адреса в isContract;
б) Не правильная проверка значения return;
в) Не правильй call вызов в isContract;
г) Ничего из перечисленного;
8. Проблемы в безопасности функции isContract():
а) Не правильная видимость;
б) Не правильный оператор сравнения;
в) Проблем нет, так как в Ethereum есть только адреса контрактов;
г) Ничего из перечисленного;
Как обычно ответы для этого теста выложу в конце дня.
Свои ответы вы можете писать в комментариях, но под функцией "Спойлер".
#test
Post #704
517
- 👍 2
- ❤ 1