Экспертные Вопросы и Ответы
Задавайте вопросы экспертам сообщества Cyfrin Updraft
Посты
191- Экспертные Вопросы и ОтветыFeb 25, 2025
Запуск узла с VPS
Мне нужно кое-что понять.. Я купил VPS для запуска узла. И, судя по ветке в твиттере, на которую я подписался, мы использовали termius. Но зачем мне держать свой терминал включенным и подключенным к Интернету, чтобы продолжать запускать узел через VPS... в то время как основная суть покупки VPS заключается в том, чтобы я мог запускать узел, пока мой компьютер не работает
- Cyfrin Updraft
- DeFi
- Blockchain
01 - Экспертные Вопросы и ОтветыJan 30, 2025
Развертывания на уровне 1
Я научился развертывать простой смарт-контракт в тестовой сети с помощью Remix. Какова наилучшая процедура развертывания протокола DeFi в любой сети уровня 1 или 2? Используете ли вы Remix, используете ли вы какой-либо интерфейс командной строки или любую другую альтернативу? Один из них безопаснее другого? и почему эта процедура выбрана по сравнению с двумя другими? Например, когда команда Uniswap развернула код Uniswap на уровне 1 Ethereum, как они развернули этот код? Спасибо
- Cyfrin Updraft
- Blockchain
- Smart Contract
01 - Экспертные Вопросы и ОтветыJan 04, 2025
Испытание на прочность литейного производства
Что может быть не так в моем коде? function testFundUpdatesFundedDataStructure() public { fundMe.fund{value: 10e18}(); uint256 amountFunded = fundMe.getAddressToAmountFunded(address(this)); assertEq(amountFunded, 10e18); } возникает эта ошибка: [14658] FundMeTest: :testfund обновляет финансируемую структуру данных () ─ [2658] FundMe: :fund {стоимость: 1000000000000000000} () │ ─ [0] 0x0000000000000000000000000000000000000000:: Данные последнего раунда () [статический запрос] │ │ ─ ← [Остановить] │ ─ ← [Вернуть] EverОшибка: вернуться ─ ← [Вернуть] EverRror: вернуться
- Cyfrin Updraft
- Foundry
- Solidity
13 - Экспертные Вопросы и ОтветыDec 19, 2024
Установка литейного завода Zksync
похоже, установки zksync foundry больше нет в репозитории github, я попытался ввести командную строку в свой терминал «в разрешении отказано, не удалось прочитать из удаленного репозитория»
- Cyfrin Updraft
- Foundry
- Solidity
12 - Экспертные Вопросы и ОтветыDec 14, 2024
Настройка развертывания SimpleStorage
Почему я постоянно получаю эту ошибку при попытке развернуть свой код в коде VS, спросил AI, и все то же самое. Вот ошибка: [] Компиляция... [] Компиляция 14 файлов с помощью Solc 0.8.18 [] Solc 0.8.18 завершился за 149,20 мс Ошибка: сбой при запуске компилятора: Ошибка (2314): ожидалось «;», но получен идентификатор --> Скрипт/развертывание SimpleStorage.s.sol: 11:9: | 11 | VM.Stop Broadcast (); | ^^ А вот мой код. Солидность «' //Идентификатор лицензии SPDX: MIT надежность прагмы ^0.8.18; импортируйте {Script} из «forge-std/script.sol»; импортируйте {SimpleStorage} из «.. /src/SimpleStorage.sol «; развертывание контракта SimpleStorage — это скрипт { функция run () возвращает внешние данные (SimpleStorage) { vm.startBroadcast (); простое хранилище SimpleStorage = новое простое хранилище (); виртуальная машина.Stop Broadcast (); вернуть простое хранилище; } } «'
- Cyfrin Updraft
- Foundry
- Solidity
11 - Экспертные Вопросы и ОтветыDec 12, 2024
Настройка литейного цеха
При попытке настроить литейный цех после установки с помощью команды «forge init» я получил следующую ошибку: Ошибка: не удалось зафиксировать ошибку (code=some (128), stdout= "», stderr="Имя автора неизвестно\n\n*Скажите мне, кто вы. \n\nВыполните команду\n\ngit config --global user.email\» you@example.com\»\ngit config --global user.name\ "Ваше имя\»\n\n, чтобы задать идентификатор учетной записи по умолчанию. \nОпустите параметр --global, чтобы задать идентификатор только в этом репозитории. \n\nФатально: невозможно автоматически определить адрес электронной почты (получен пользователь @MACs -MBP). (нет) ')») Хотя мне удалось получить все нужные папки, кроме «lib» и «.gitmodules», надеюсь, это не повлияет на меня в будущем. А еще я пытаюсь использовать «forge init --force» без изменений
- Cyfrin Updraft
- Foundry
- Solidity
12 - Экспертные Вопросы и ОтветыMar 29, 2024
What are the recommended protocols for smart contract audit?
I am looking to conduct a smart contract audit and would like to know the best protocols to follow. Can anyone suggest a wide range of protocols that are commonly used in competitive audits? Any insights or recommendations would be greatly appreciated. Thank you.
- Foundry
- Security
- Blockchain
01Официальный ответ - Экспертные Вопросы и ОтветыMar 29, 2024
Error `make deploy` in VS Code - `bash: make: command not found`
I am encountering an issue while trying to deploy using make deploy in VS Code with Foundry and Anvil. Despite Anvil launching properly without any errors, when I attempt to deploy using the command make deploy, I consistently receive the error message bash: make: command not found. Has anyone faced a similar problem or can provide guidance on resolving this issue? Any assistance would be greatly valued as I have been unable to progress since yesterday. Thank you.
- Foundry
01Официальный ответ - Экспертные Вопросы и ОтветыMar 29, 2024
Which function selector and input data should be used in solveChallenge?
I am working on the solveChallenge function which requires a function selector and input data to be passed. I am unsure about which function I should get the function selector for, and what the input data should be that needs to be turned into bytes. Any guidance on this would be greatly appreciated. Thank you in advance for your help. function solveChallenge(bytes4 selectorOne, bytes memory inputData, string memory yourTwitterHandle) external { (bool successOne, bytes memory responseDataOne) = i_helperContract.call(abi.encodeWithSelector(selectorOne)); if (!successOne || uint256(bytes32((responseDataOne))) != 1) { revert S1__WrongSelector(); } (bool successTwo, bytes memory responseDataTwo) = i_helperContract.call(inputData); if (!successTwo || uint256(bytes32((responseDataTwo))) != 1) { revert S1__WrongData(); } _updateAndRewardSolver(yourTwitterHandle); } I am motivated to understand how to find the solution, not just for obtaining the NFT. Thank you for your assistance.
- Transaction
- Solidity
- Smart Contract
01Официальный ответ - Экспертные Вопросы и ОтветыMar 29, 2024
How to Report Multiple Instances of an Attack Vector in Base Code?
I have encountered the same attack vector multiple times in a base code. Should I include each instance separately in my report or consolidate them into a single entry? For instance, if I identify a Denial of Service (DOS) attack in three different functions, should I classify these findings as three distinct high-severity issues in my report, or combine them into a single report entry for efficiency and clarity? Any insights on the best approach for reporting such repeated vulnerabilities would be greatly appreciated. Thank you.
- Security
01Официальный ответ